.gitignore 파일은 Git이 특정 파일을 추적하지 않도록 설정하는 파일이다.
일반적으로 프로젝트 루트(홈)에 위치하며, 프로젝트마다 별도로 설정할 수 있다.
Git은 .gitignore 파일의 내용을 기준으로 특정 파일을 무시하며, 이는 프로젝트 전체에 적용된다.
.gitignore 파일은 프로젝트 루트 디렉터리에 생성하며, 무시할 파일 또는 디렉터리의 패턴을 한 줄씩 작성한다.
# 로그 파일 제외
logs/
*.log
# 빌드 결과물 제외
/build/
*.o
*.class
# 환경 설정 파일 제외
.env
config/local.json
# 모든 .log 파일 제외
*.log
# 모든 .tmp 파일 제외
*.tmp
# npm 패키지 디렉터리 제외
node_modules/
# Python 가상 환경 제외
venv/
# important.log 파일은 추적
*.log
!important.log
이미 Git에 추가된 파일은 .gitignore 에 추가해도 무시되지 않는다.
이 경우, 아래 명령어로 해당 파일을 추적 목록에서 제거한 후 커밋해야 한다.
git rm --cached <파일명>
git commit -m "Remove tracked file"
.gitignore 가 제대로 작동하는지 확인하는 명령어
git check-ignore -v <파일명>
모든 Git 프로젝트에 공통적으로 적용할 무시 패턴을 설정
git config --global core.excludesfile ~/.gitignore_global
이 후 ~/.gitignore_global 파일을 생성하고 패턴을 추가한다.
# macOS 시스템 파일 제외
.DS_Store
# Windows 썸네일 캐시 제외
Thumbs.db