Git에서 특정 파일을 제외하는 방법

dev | 2012-07-10

Git에서 특정 파일에 대한 추적을 중단하는 방법은 상황에 따라 몇가지가 있다.

저장소에 추적하지 않아야 하는 파일이 추가된 경우, 하지만 작업공간에서 파일이 삭제되면 안되는 경우에 아래의 명령을 사용하면 저장소에서는 파일이 삭제되지만 내 작업공간에는 파일이 남아 있게 된다. --cached 옵션없이 사용하면 내 작업공간의 파일도 같이 삭제한다.

git rm --cached filename

하지만 빌드 환경 관련된 파일과 같이 저장소에도 필요하고 내 작업공간에도 필요한 경우도 있다. 사실 이경우 때문에 찾아본건데 이때는 아래의 명령을 사용하면 된다. 저장소에도 있고 작업공간에도 있지만 작업공간의 파일을 변경해도 커밋하라든지 push가 안된다든지 떠들지 않는다.

git update-index --assume-unchanged [path]

.DS_store나 Thumb.db같이 시스템에서 수시로 파일을 만들어서 자꾸 걸리는 경우도 있다. 이럴때는 .gitignore에 파일을 등록해두면 파일을 완전히 무시하게된다.

Comments

  • ElegantCoder 2012-07-12

    SVN 에서 항상 아쉬웠던 기능인데.. 감사합니다.

Post a comment

:

: 공개 되지 않습니다. Gravatar를 표시 합니다.

:

: HTML 태그를 사용할 수 없습니다.