.gitignore
파일은 프로젝트에서 업로드를 원하지 않는 파일이나 디렉터리를 GitHub
에서 제외시키는 설정 파일이다. 이를 통해 보안 설정 등 원치 않는 파일이 저장소에 포함되지 않도록 할 수 있다.
이번 글에서는 .gitignore
파일의 작성법과 적용법, 그리고 설정 파일을 .gitignore
에 적용하는 방법에 대해 자세히 설명해 보도록 하겠다.
.gitignore
파일은 프로젝트의 루트 디렉터리에 위치하며, Git
이 추적하지 않도록 파일 패턴을 지정한다. 예를 들어 여러 사람이 작업할 때 충돌될 수 있는 파일이나 개인 설정 파일 등을 Git
저장소에서 제외할 수 있다.
#
는 주석으로 처리/
로 시작하는 패턴은 루트 디렉터리에서만 적용됨*
는 임의의 문자열을 의미**/
는 모든 하위 디렉터리에 적용됨!
로 시작하는 패턴의 파일은 무시하지 않음.gitignore
의 역할과 문법에 대해 알았으니 이제 실제로 파일을 작성해 보자.
# 바이너리 파일 제외
*.exe
*.dll
*.so
# 로그 파일 제외
*.log
# 임시 파일 제외
*.tmp
# 빌드 디렉터리 제외
/build/
# 사용자 설정 파일 제외
*.user
# 모든 .env 파일 제외
**/.env
# 모든 .log 파일을 제외하지만 app.log는 제외하지 않음
*.log
!app.log
.gitignore
파일을 생성한다..gitignore
파일에 작성한다..gitignore
파일을 Git에 추가하고 커밋한다.git add .gitignore
git commit -m "Add .gitignore file"
.gitignore
에 추가해도 제외되지 않는다. 이 경우 파일을 삭제하고 커밋한 후, .gitignore
에 추가해야 한다.git rm --cached filename
git commit -m "Remove cached file"
YML 파일은 주로 설정 파일로 사용되며, JWT
토큰 정보나 DB
비밀번호 등 민감한 정보를 포함하고 있기 때문에 .gitignore
에 추가하여 버전 관리에서 제외할 수 있다.
# 모든 .yml 파일 제외
*.yml
# 특정 .yml 파일 제외
application-jwt.yml
# 모든 .yaml 파일 제외하지만 특정 파일은 제외하지 않음
*.yml
!application.yml
.gitignore
파일은 프로젝트 관리에 있어 매우 유용한 도구이다. 특히 보안적인 관점에서 매우 중요하기 때문에 직접 작성하고 익숙해지는 것이 중요하다. 직접 프로젝트를 진행할 때 적용해 보자!