.gitignore에 추가하지 않고 변경사항 무시하는 방법
특정 파일 변경사항을 git으로 트래킹하고 싶지 않은 경우 .gitignore
에 추가하면 된다.
그런데 .gitignore
에 추가하지 않으면서, 로컬의 변경사항을 무시하고 싶은 경우가 있다.
예를 들면 sdk 설정같은 개인별로 다르게 설정할 수 있는 부분인데, jdk를 설정한다고 하면 mise를 쓸 수도 있고, jenv를 쓸 수도 있고, sdkman을 쓸 수도 있다. 이 툴들의 개인별 설정파일을 모두 .gitignore에 등록하는것도 가능은 하지만, 툴이 워낙 많기도 하고 번거로우니, 이 경우엔 로컬에서 변경사항을 무시하는 것으로 충분하다고 생각한다.
아직 git에서 트래킹되지 않는 파일인 경우
.git/info/exclude
에 무시할 파일을 추가한다
mkdir -p .git/info
echo {무시할_파일} > .git/info/exclude
이미 git에서 트래킹하는 파일인 경우
이미 기존에 커밋되어서 트래킹되는 파일인데, 로컬 변경사항만 무시하고 싶은 경우엔 아래 명령어를 사용한다
git update-index --assume-unchanged {무시할_파일}
만약 나중에 다시 git에 변경사항을 반영하고 싶다면, 아래 명령어로 되돌리면 된다
git update-index --no-assume-unchanged {다시_반영할_파일}