2010-02-23 2 views
21

.git 폴더가있는 .gitignore 파일 ( )을 만들었지 만 저장소 다시 검사를 수행 할 때 무시하려고하는 파일은 계속 가져옵니다.Git GUI를 사용하여 파일을 어떻게 무시합니까?

이것은 파일의 내용입니다.

# Ignored files 
*.suo 
*.user 
bin 
obj 
*.pdb 
*.cache 
*_svn 
*.svn 
*.suo 
*.user 
*.build-res 
TestResults 
_ReSharper* 

내가 뭘 잘못하고 있니? 파일의 위치는 어디입니까?

답변

12

아직보고있는 파일이 현재 커밋되거나 준비되지 않았는지 확인해야합니다.

당신이 그 (git rm 또는 git rm --cached)을 제거하고 개인 파일로 추가하는 경우

는, 그들은 무시됩니다.

+0

이것이 이유 여야합니다. 감사합니다. – Darkmage

1

바로 찾으십시오. .gitignore는 .git 폴더가있는 동일한 폴더에 있어야합니다. 내부 파일도 올바르게 보입니다. 그러나 상단에 주석 줄이 없습니다.

6

파일이 좋아 보인다. 각 줄의 시작 부분에 공백 문자가 없는지 확인하십시오. 내 .gitignore가 올바르게 작동하지 않는 이유를 확인하는 데 4 시간이 걸렸습니다. 그 이유는 물론 파일의 시작 부분에 수직선이있는 cut'n'Paste 문제였습니다.

.gitignore 파일이 원하지 않는 것을 완전히 제거하기 전에 git commit -a과 조심해야합니다. 각각의 파일을 (또는 와일드 카드를 사용하여) git add *.cpp *.h으로 표시하거나 선호하는 것처럼 - 진행하면서 .gitignore를 개발하고 커밋하기 전에 항상 git status으로 확인하십시오. 이것은 당신이 현재 무시하고 모든 파일을 나열한다 try

git ls-files --others -i --exclude-standard 

당신이 당신의 .gitignore 정말 작동하는지 다시 한 번 확인하고 싶은 경우

.

이미 추가 한 파일을 청소하려면 당신이 @VonC 말했듯이 할 수있는 (아마도 =], 우리 모두가 처음에 만들어 실수를 git add . 사용) : 를 중 하나를 실행

git rm <filename> 

또는

git rm --cached <filename> 

실수로 추가 한 파일을 모두 삭제하는 또 다른 방법은 저장소를 완전히 청소 한 다음 모든 항목을 다시 추가하는 것입니다. 당신은 준비 영역에 you can run

git --rm cached . 

모든 것을 지우하지만 자식 상태는 정말 저장소에서 원하는 파일을 나열해야했습니다 때까지하지 git add .을 실행하는 것을 기억하십시오.

또 다른 매우 유용한 점은 와일드 카드를 사용할 때 파일에 대한 경로가 필요 없다는 것입니다. 당신이 당신의 무시 파일을 나열하고 모든 *.suo*.log 파일을 제거 할 것을 볼 경우에, 다만

git rm --cached *.suo *.log 

을 실행하고 자식은 서명에 상관없이 어디에서 그와 일치하는 저장소에있는 모든 파일을 찾는을 담당 그들이있는 나무.

0

내가 이것을 보았을 때 나는 당신이 무시 파일을 커밋하는 것을 잊었다 고 생각할 것이다.

2

나는이 작업을 얻을 수있는 다양한 방법을 시도하고 마침내 아주 간단했다 :

당신은 먼저 .gitignore를 저지해야합니다!

또한 TortoiseGIT - GitEx Commit Tool을 사용하는 경우 무시 된 파일을 편집 할 수있는 옵션이 있습니다.

0

--rm 캐시 된 솔루션 중 아무 것도 작동하지 않았습니다. 파일을 ASCII/ANSI로 인코딩해야합니다. 나는 라인 엔딩도 변경했으나, 그것만으로는 수정하지 못했다. 나는 (! 미안 해요, 원래 포스터)이 지침이 있었다 URL을 찾을 수 없습니다 그러나 이것은 나를 위해 일한 : 당신은 이미이없는 경우

  1. 것은 ++ 메모장을 설치합니다. 텍스트 패드는 에서도 작동해야하지만 메모장 ++을 사용합니다.
  2. .gitignore를 Notepad ++로 엽니 다.
  3. 보기 | 기호 표시 | 모든 문자 표시. 각 행 끝에 CR LF가 표시됩니다.
  4. 검색을 수행하고 확장 (Ctrl + H)을 바꾸고 확장이 선택되어 있는지 확인한 다음 (손을 아래로 잡습니다). \ r \ n을 (를) 검색하고 \ n (으)로 바꾸십시오. 모든 CR LF 변경 사항이 LF로만 표시됩니다.
  5. 인코딩 | ANSI로 인코딩하십시오.
  6. 파일을 저장하고 종료하십시오. 당신이 자식 상태를 할 때 .gitignore에있는 파일을 보여주지해야 윈도우의 명령 프롬프트 또는 당신이 좋아하는 둘 중 자식 명령 프롬프트에서

.

관련 문제