
.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 파일은 프로젝트 관리에 있어 매우 유용한 도구이다. 특히 보안적인 관점에서 매우 중요하기 때문에 직접 작성하고 익숙해지는 것이 중요하다. 직접 프로젝트를 진행할 때 적용해 보자!