테크매니아
임시로 커밋하고 싶지 않은 파일이 있을 떄 본문
반응형
커밋하기 싫은데 변경사항이 있어 pull 못 받는 경우
.bashrc에 임시로 추가한 라인이 있었는데 메인 브랜치에서 pull을 받아 최신으로 개발환경을 유지하고 싶었다. 그런데 .gitignore을 쓰고 커밋할 정도는 아니고 겨우 한라인 추가한건데, 임시로 삭제했다 다시 카피뜨자니 애매했다. 게다가 merge받아서 충돌이 날만한 파일도 아니었다. 변경사항은 다른 파일에 있었으므로.
git update-index 이용하기
update-index 명령어는 워킹 디렉토리에서 작업한 내용을 index에 등록하는 명령어인데 옵션 중에 --assume-unchaned
를 이용하면 변경사항이 없는 것처럼 만들 수 있다. 그래서 필요한 작업 후 아래 명령어를 하면 modified
메세지가 사라지게 된다.
포맷
git update-index --assume-unchanged <file-path>
# 되돌리기
git update-index --no-assume-unchanged <file-path>
TMI : 동작원리
파일이 변경되면 변경되었다고 파일 시스템이 시그널을 만들고 이 정보를 이용해 Git이 워킹트리에 있는 파일이 변경됨을 감지 할 수 있다. 이 명령어를 통해 특정 파일에 git이 사용하는 assume-changed 비트를 켜주면 이 비트를 변경사항 체크에서 제외를 해준다.
반응형