Post

Git에서 gitignore가 정상적으로 작동하지 않을 때 해결 방법

Git을 사용하다 보면 때때로 .gitignore 파일이 예상대로 작동하지 않아 변경사항(tracked files) 목록에 원치 않는 파일이 계속 나타나는 문제가 나타날 수 있습니다. 이런 상황이 발생할 때, 해결하기 위해 점검해야 할 몇 가지 항목을 정리해 보겠습니다.

.gitignore 파일의 위치와 문법

  • .gitignore 파일은 프로젝트의 최상위 디렉토리에 위치해야 합니다.
  • 각 패턴은 별도의 라인에 작성되며, glob 패턴을 사용하여 파일 또는 디렉토리를 지정할 수 있습니다.
  • 파일 확장자를 지정할 때는 파일 이름 앞에 *을 추가합니다.
  • 디렉토리를 지정할 때는 디렉토리 이름 끝에 /를 추가해야 합니다.
  • 예외를 설정할 때는 패턴 앞에 !를 추가합니다.

Git 캐시 문제

Git은 이미 추적하고 있는 파일을 .gitignore 파일에 추가해도 무시하지 않습니다. 이런 경우, Git 캐시를 삭제해야 .gitignore 파일이 정상적으로 적용됩니다.

1
2
3
$ git rm -r --cached .
$ git add .
$ git commit -m "fixed untracked files"

파일 이름 및 디렉토리 이름 오류

.gitignore 파일에 등록된 패턴과 실제 파일이나 디렉토리 이름이 정확히 일치해야 합니다. 대소문자 구분과 특수 문자 사용에 주의해야 합니다.

파일 상태 문제

.gitignore에 등록된 파일이 이미 add 또는 commit된 경우, .gitignore 파일 변경 후에도 해당 파일은 무시되지 않습니다. 이런 경우, git rm 명령어를 사용하여 해당 파일을 추적 목록에서 제거해야 합니다.

Git 버전 문제

사용 중인 Git 버전이 너무 오래된 경우, .gitignore 파일을 제대로 지원하지 않을 수 있습니다. 최신 버전의 Git을 사용하는 것이 좋습니다.

인코딩 문제

.gitignore 파일이 여전히 작동하지 않는다면, 파일을 다른 이름으로 저장한 후 다시 .gitignore로 변경하거나, 다른 텍스트 편집기로 .gitignore 파일을 열어 저장하면 인코딩 문제를 해결할 수 있습니다..

This post is licensed under CC BY 4.0 by the author.