繁体   English   中英

未跟踪的文件仍以git状态显示

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM