2014-05-15 2 views
3

나는 자식 상태 실행하면 : git으로 추적 된 파일에 대한 새로운 변경 사항을 무시하는 방법은 무엇입니까?

.project 
reports/images/*.png 
reports/images/*.bmp 
reports/phpbmp/cache/* 

그래서 내가 .gitignore

방법이 파일을 추가 : 내가 추적 할 다음과 같은 파일을 변경하지 않을 것을 깨달았다

$ git status 
# On branch master 
# Changes not staged for commit: 
# (use "git add/rm <file>..." to update what will be committed) 
# (use "git checkout -- <file>..." to discard changes in working directory) 
# 
#  modified: .gitignore 
#  modified: .project 
#  modified: reports/images/2014-03.png 
#  modified: reports/images/graph-2014-03.bmp 
#  deleted: reports/phpbmp/cache/0/02/027/0270/phpThumb_cache_portal.gep.co.za_src02707010e1e50bc80594 
f31460d514c4_par80d8993b181666aca11d7be02b12fea7_dat1399293161.bmp 
#  deleted: reports/phpbmp/cache/0/02/027/0270/phpThumb_cache_portal.gep.co.za_src02707010e1e50bc80594 
f31460d514c4_par80d8993b181666aca11d7be02b12fea7_dat1399293182.bmp 
# 
# Untracked files: 
# (use "git add <file>..." to include in what will be committed) 
# 
#  README.MD 
#  reports/phpbmp/cache/9/ 
no changes added to commit (use "git add" and/or "git commit -a") 

을 현재 작업 디렉토리에서 Changes not staged for commit 아래의 파일을 제거합니까?

답변

9

잘 알고 계신가요? filename이 (가) 자식 저장소에 있어야합니다. 그러나 filename에 대한 새로운 변경 사항에 대한 알림을 받고 싶지는 않습니다.

git update-index --no-assume-unchanged <filename> 

추가 정보 : 당신이 싶어 다시 다음 명령을 실행 변경 추적을 시작하면

git update-index --assume-unchanged <filename> 

:이 명령을 사용하여이 작업을 수행 할 수 있습니다 .gitignore 파일 만 무시 편집을 그래서 그들은하지 않습니다 git 저장소에 추가됩니다. 그러나 이미 추적 된 파일은 무시되지 않습니다.

+0

문제는 당신의 변화가 여전히 충돌을 일으킬 수 있고 그들은 단지 발견하기가 더 어려워 질 것입니다. 변경 사항을 숨기거나 커밋 할 수 없으므로 다른 지점에 '체크 아웃'할 수 없게 될 수 있습니다. –

+0

예. 위에서 언급 한 내용은 저에게 나쁜 습관으로 간주됩니다. 변경 사항을 추적하지 않으려면 repo에서 이러한 파일을 제거하는 것이 좋습니다. – surfer190

1

파일이 이미 추적되었으므로 이제 해당 파일을 무시하고 싶습니다.

git rm --cached filename 
echo "filename" >> .gitignore 
git add .gitignore 
git commit -m 'Removes filename file and adds it to gitignore.' 
+0

이 내게주는'# 변경이 커밋 될 : # (사용 "자식 재설정 HEAD ..."unstage하는) # 삭제 # : .project'를,이 파일을 의미하지 않는다 삭제할 ​​것 누군가가 리포에서 끌어 올 때 전혀 존재하지 않습니까? – surfer190

+0

예, 참으로 그렇습니다. 그건 저장소에서 파일을 제거합니다 ... 당신이 사용해야합니다 - assume - unchanged ... –