2013-08-24 2 views
4

Git에 몇 개의 폴더가 있습니다. "gitignore"파일에 추가되었습니다. 그들은 100,000 개 이상의 파일을 포함하고 있습니다. 주로 이미지, tmp 및 캐시 물건. 내가 필요한 것은 그 폴더에서 일어나는 일을 저지하지 않고 내 코드에 변경 사항을 적용 할 수있게하는 것입니다.Git은 여전히 ​​.gitignore에 표시된 폴더를 추가하고 추적합니다.

".gitignore"에 추가하면 트릭을 만들지 만 어떤 이유로는 전혀 작동하지 않는다고 생각했습니다. 내가 푸시 명령을 시도 할 때마다 100k 개의 파일을 전송하려고 시도 할 때마다 멈추고 시간이 초과되기 때문에 며칠 만에 repo에 아무 것도 투입 할 수 없었습니다.

[email protected] [/home/***/***]# git push origin master 
Password: 
Counting objects: 110300, done. 

나는 마침내 내가 코드에 대한 모든 변경 사항을 커밋 할 수 있도록 고려하여 무시 폴더를 복용하는 동안 어떻게 나무를 다시 인덱스 힘내 강제 할 수 있습니까?

답변

14

.gitignore을 추가하기 전에 일부 파일을 추가했기 때문에 (아마도) 작동하지 않는 이유가 있습니다. 따라서 파일을 무시하기 전에 제거해야합니다.

출처 : https://stackoverflow.com/a/1139797/2128691

먼저, 가 해결되지 않은 코드가 변경 커밋 한 다음,이 명령을 실행 :

git rm -r --cached . 

이것은 인덱스에 이르기까지 모든 것을 제거 후 바로 실행

git add . 

위탁 사항 :

git commit -m ".gitignore is now working" 
+2

커밋하기 전에 **의 파일을 포함한 커밋은 계속 유지됩니다. 그래서 저장소를 작게 만들지 않을 것이고, 대신 git은 앞으로 ** 그 파일들의 추적을 중단 할 것입니다 **. –

관련 문제