[英]untracked files still appear in git status
我使用.git / info / exclude跟踪了一些文件夹和文件:
doc
*.txt
doc/*.txt
doc/somefile.txt
但是git status表示它仍然被跟踪:
$ git st
# On branch dev
# Changes not staged for commit:
# (use "git add <file>..." to update what will be committed)
# (use "git checkout -- <file>..." to discard changes in working directory)
#
# modified: doc/somefile.txt
其他奇怪的事情是ls-files
显示它未被跟踪:
$ git ls-files --ignored --exclude-from=.git/info/exclude
doc/somefile.txt
$ touch /tmp/xxx
$ git ls-files --ignored --exclude-from=/tmp/xxx
$
我在git版本1.8.1.5
所以我得出结论,我可能会误解某些事情或做错事。 有什么好主意吗?
由于您在本地忽略了存储库中的文件,因此您需要告诉git您忽略它们
git update-index --assume-unchanged <files to forget>
你需要git rm --cached <file>
。 这不会从您的工作目录中删除该文件,但会将其从git cache
删除,因此它现在将被包含在内。 gitignore
。
由于文件当前正在被跟踪,你需要告诉git
在忽略它们之前忘记它们。
git rm --cached doc/somefile.txt
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.