© 2020 GitHub, Inc.

Gitignore 설정

참조: https://git-scm.com/docs/gitignore

gitignoregit에서 어떤 파일을 무시할지 설정하는 파일입니다. 이미 tracked된 것들에는 영향을 주지 않습니다.

gitignore 참조 순서

syntax

blank line

파일과 매칭되지 않습니다. 따라서 가독성을 위해 사용할 수 있습니다.

#

#은 comment로 처리됩니다.

Traling space

\로 감싸졌다고 하더라도 무시됩니다.

!

!는 not과 같습니다. 파일 이름 맨 앞에 !가 있고, 이를 ignore할 때 사용하려면 \를 통해 escape 해줘야 합니다.

/

/는 디렉토리를 구분합니다. 처음, 중간, 끝 어느 위치에도 올 수 있습니다.

끝에 /를 사용하면 매칭되는 폴더에만 적용이 됩니다. 사용하지 않으면 매칭되는 폴더, 파일 모두 적용됩니다.

*

/를 제외한 모든 길이의 문자와 매칭됩니다.

?

/를 제외한 한 문자와 매칭됩니다.

range

[a-zA-Z]처럼 range를 설정할 수 있습니다.

**

**/를 포함한 모든 길이의 문자와 매칭됩니다.

**로 시작하고 /를 적으면 모든 디렉토리에서 검색합니다. 예를 들어 **/foo는 모든 디렉토리에 있는 foo와 매칭됩니다. (현재 디렉토리인 .도 포함됩니다. ..는 포함되지 않습니다.)

**로 끝나는 경우 모든 내부 파일, 폴더와 매칭됩니다. 예를 들어 abc/**는 abc 폴더 내부의 모든 파일, 폴더와 매칭됩니다.

**를 중간에 적은경우 모든 sub directory(0개 이상)와 매칭됩니다. 예를 들어 a/**/ba/b, a/x/b, a/x/y/b 모두 매칭됩니다.