
.gitignore가 제대로 작동되지 않아서 ignore 처리한 파일이 계속해서 추적될 때가 있다.
.gitignore가 정상적으로 적용되지 않는 이유는 생성될 때의 정보를 캐시가 그대로 가지고 있기 때문이다.
즉, 캐시가 추가하기 전에 .gitignore 정보를 가지고 있고 우리가 필요에 의해 새로 추가한 정보가 갱신되지 않은 것이다.
따라서 아래의 명령어를 통해 해결할 수 있다.
git rm -r --cached .
git add .
git commit -m "update .gitignore"
- Git 인덱스 또는 스테이징 영역에서 모든 파일과 디렉터리를 삭제하지만, 로컬 파일 시스템에서는 삭제하지 않고 남겨둘 때 사용된다. (실제 파일은 삭제되지 않음)
- rm -r: 파일 or 디렉토리를 재귀적으로 삭제
- --cached: 파일을 인덱스/스테이징 영역에서만 삭제
- . : 현재 디렉터리를 지정