몽땅뚝딱 개발자

[git] .gitignore 작성하기 본문

Development/Git

[git] .gitignore 작성하기

레오나르도 다빈츠 2023. 4. 10. 21:28

 

 

 

 

 

 

로그 파일이나 빌드 시스템이 자동으로 생성한 파일은 Git이 관리할 필요가 없다.

*.[oa] // 확장자가 ".o"나 ".a"인 파일을 무시하라
*~ // ~로 끝나는 모든 파일을 무시하라

 

 


 

 

◽️ .gitignore의 패턴

- 아무것도 없는 라인이나, '#'로 시작하는 라인은 무시한다.

- 표준 Glob 패턴을 사용한다. 이는 프로젝트 전체에 적용된다.

- 슬래시(/)로 시작하면 하위 디렉토리에 적용되지 않는다.

- 디렉토리는 슬래시(/)를 끝에 사용하는 것으로 표현한다.

- 느낌표(!)로 시작하는 패턴의 파일은 무시하지 않는다.

 

 

 

◽️ Glob 패턴

정규표현식을 단순하게 만든 것이다.

- 애스터리스크(*)는 문자가 하나도 없거나 하나 이상을 의미한다.

- [abc]는 중괄호 안에 있는 문자 중 하나를 의미한다.

- [0-9] 처럼 하이픈(-)을 사용하면 그 캐릭터 사이에 있는 문자 하나를 말한다.

- 애스터리스크 2개를 사용하여 디렉토리 안의 디렉토리까지 지정할 수 있다.

 

📄 예제

# 확장자가 .a인 파일 무시
*.a

# 윗 라인에서 확장자가 .a인 파일은 무시하게 했지만 lib.a는 무시하지 않음
!lib.a

# 현재 디렉토리에 있는 TODO파일은 무시하고 subdir/TODO처럼 하위디렉토리에 있는 파일은 무시하지 않음
/TODO

# build/ 디렉토리에 있는 모든 파일은 무시
build/

# doc/notes.txt 파일은 무시하고 doc/server/arch.txt 파일은 무시하지 않음
doc/*.txt

# doc 디렉토리 아래의 모든 .pdf 파일을 무시
doc/**/*.pdf

 

 

◽️ .gitignore 작성 시 참고해보자

 

GitHub - github/gitignore: A collection of useful .gitignore templates

A collection of useful .gitignore templates. Contribute to github/gitignore development by creating an account on GitHub.

github.com

 

 

 

 


 

 

 

출처

프로 Git, Scott Chacon, 2014

 

 

 

 

Comments