2012-12-02 5 views
12

현재 Git에서 추적 할 파일을 만들 때마다 인덱스에 추가하기 만하면됩니다. 만약 내가 인덱스에 그것을 추가하지 않으면 힘내는 "그것을 보지 않을 것이다". 그렇다면 인덱스에 추가하지 않고 gitignore 파일을 사용해야하는 이유는 무엇입니까?왜 gitignore를 사용해야합니까?

답변

8

일반적으로 프로젝트가 커지면 각 파일을 하나씩 추가하면 지루할 수 있습니다.

Java의 경우 저장소에 추가하지 않을 많은 파일이 .class 개가 될 수 있습니다. 비슷하게, C로 된 .o 파일이나 파이썬에서의 .pyc 파일로 끝날 수도있다.

갖는 패턴 *.class처럼, 당신의 .gitignore 파일 *.o, *.pyc는 한번에 그 파일을 무시 할 수 있습니다. 이후 git status 실행 (또는 GUI를 사용하는 경우 유사)하면 새롭고 비 추적 된 파일임을 알 수 없으므로 완전히 새롭고 눈에 띄지 않는 파일에 집중할 수 있습니다.

전체 디렉토리 (예 : git add myproject)를 추가하는 경우 유용 할 수 있습니다.이 옵션을 사용하면 파일 카테고리를 모두 무시할 수 있습니다.

6

git status에서 파일을 숨 깁니다. 특히 생성 된 파일이 많으면 항상 거기에 나타나기를 원하지 않습니다. 또한 실수로 실수로 추가하지 못하도록합니다. git add somefolder 일 때.

gitignore 파일의 목적은 git에서 추적하지 않는 특정 파일을 추적 할 수 없게하는 것입니다.

3

gitignore 파일의 목적은 git에서 추적하지 않는 특정 파일을 추적 할 수 없게하는 것입니다. http://git-scm.com/docs/gitignore

당신이 당신의 repo의 루트 디렉토리에서 git add .를 실행하는 말, 당신은 아무것도 무시합니다. 이전에 무시한 정신적으로 모두 인 모든 파일을 색인에 추가했습니다. 추가 기능은 버전 관리 .gitignore으로 다른 사용자가 비슷한 실수를하지 않도록 할 수 있다는 것입니다.

0

git commit -a을 편리하게 사용할 수있을뿐 아니라 실수로 저장소를 오염 시키거나 중요한 정보를 노출하지 않도록 안전 장치입니다.

0

일부 파일을 .gitignore 파일로 지정하면 장점은 무시 된 파일을 실수로 추가하지 않고도 번에 모든 추적 된 파일 을 한 번에 커밋 할 수 있다는 것입니다. 그것은 예를 들어 사용하여 파일을 커밋 훨씬 빠른 것입니다 : 대신 하나 하나를 추가

git commit -a 

...

1

예, GIT 원격 저장소에 최선을 다하고되는 불필요한 파일을 방지하기 위해. 확장자가 pyc 파일이나 확장자가있는 파일을 피하려면

과 같이 .gitignore 파일에 적절한 설명을 입력하기 만하면됩니다.클래스 파일 다음에 * .pyc * .class

.gitignore 파일에이 두 줄을 넣을 것입니다. 앞으로 GIT repo에서 결코 커밋되지 않을이 파일들에 대해 걱정할 필요가 없습니다.

감사합니다.

1

각 파일을 추가하는 것은 지루한 작업이 아닙니다. 예를 들어, 새로운 된 .java 파일의 무리가 있다면 당신은 할 수 있습니다 :

find . -name \*.java | xargs git add

을 당신이 그들을 많이있을 때 지루한 것 .gitignore에서 가능한 모든 예외를 유지. 따라서 .gitignore는 예외 (체크 인되어서는 안되는 파일 패턴)가 적지 만 검사 할 파일 패턴이 많고 정기적으로 새 파일이 계속 나타나면 의미가 있습니다. 그러나 그것이 다른 길일 때, 나는 삶이 .gitignore 없이는 더 좋다고 생각한다.

관련 문제