.gitignore 파일을 깔끔하게~

협업하는 다른 친구에게 pull request를 보냈다가 알게된 팁인데 꿀팁인 것 같아서 정리해둔다.

보통 .gitignore 파일은 프로젝트 빌드 혹은 작업 과정에서 생기는 부산물들을 굳이 git에 포함시킬 필요가 없는 파일들 혹은 디렉토리들을 제외시키기 위해서 사용된다. 이런 파일들 가운데 내가 종종 포함시키는 패턴들이 IDE와 관련된 파일들이었다.  하지만 IDE라는건 개인적인 취향에 따라 다름이 있다. 사람마다 서로 다른 IDE에 대한 부분을 .gitignore 파일에 포함시키다보면 .gitignore 파일이 두서없이 변경되기 마련이다. 내가 쓰는 IDE를 저 친구가 안쓴다고 비난할 일은 아니지않은가?

그럼 이 부분을 다른 사람을 방해하지 않고 처리할 수 있을까?  정답은 global .gitignore 파일을 사용하는 방법이다. 사용 방법은 간단히 다음 링크를 참고하면 된다.

https://help.github.com/articles/ignoring-files/#create-a-global-gitignore

내용을 추려서 정리하면

  • 사용자 홈 디렉토리에 ~/.gitignore 파일을 만들어둔다. (파일 이름은 꼭 이게 아니어도 된다.)
  • 이 파일에 내가 작업하는 내 IDE 혹은 생성될 수 있는 불필요한 파일들의 패턴들을 기록해둔다.

gitignore

  • 아래 명령을 한번 돌려준다.  그럼 이후에 다른 프로젝트를 동일한 IDE를 가지고 작업하더라도 해당 파일들은 git 대상에 포함되지 않는다.
$ git config --global core.excludesfile ~/.gitignore

이 방식을 사용하면 프로젝트에 포함된 .gitignore 파일은 프로젝트에 관련되서 생기는 불필요한 파일들만 관리할 수 있기 때문에 프로젝트를 온전히 프로젝트 용도로만 관리할 수 있게 된다.  작지만 협업자들을 위한 배려 차원에서 하나씩은 설정해둘만하다.