본문 바로가기

Programming/Git

.gitignore 사용법 정리

.gitignore 이란?

깃에서 특정 파일 혹은 디렉토리를 관리 대상에서 제외할 때 사용하는 파일이다.

이 파일 안에 기입된 내용들은 모두 깃에서 관리하지 않겠다는 것을 의미함. 예를 들어 자동으로 생성되는 로그파일, 프로젝트 설정 파일과 같이 외부에 노출되면 안되는 파일을 관리 대상에서 제외함으로써 github 에 노출되지 않는다.

최상위 디렉토리 이외에 어떤 디렉토리 안에 있던 간에 해당 파일 무시하는 방법

**/*.docs    -- 모든 디렉토리(실험결과 최상위 디렉토리도 포함임.) 아래 .docs 확장자 파일 커밋에서 제외
*.docs       -- 최상위 디렉토리 아래 .docs 확장자 파일 커밋에서 제외
name.py      -- 최상위 디렉토리 아래 name.py 파일 커밋에서 제외
data/        -- data 디렉토리 커밋에서 제외

-- 특수 케이스 : private/data 디렉토리를 커밋에서 제외하되, 그 안에 .public 확장자 파일은 커밋에 추가하고 싶을 때
private/data/**
!private/data/*.public

.gitignore 가 적용되지 않을 때 해결법

.gitignore가 제대로 작동되지 않아서 ignore처리된 파일이 자꾸 changes에 나올때가 있다.
=> git의 캐시가 문제가 되는거라 아래 명령어로 캐시 내용을 전부 삭제후 다시 add All해서 커밋하면 된다.

git rm -r --cached .
git add .
git commit -m "Fix: fix untracked files"