取消跟踪并停止跟踪gi中的文件

我有一个名为.gitignore的深层子文件夹,其中包含我不希望被git(Windows)跟踪的名为.gitignore的文件。

在.gitignore中,我尝试了各种组合(例如.gitignore.gitignore等)都无济于事:每次我执行git status时,都会看到:

# Untracked files:
#   (use "git add <file>..." to include in what will be committed)
#
#       foo/src/objects/a.object
#       foo/src/objects/b.object

只有当我将.gitignore添加到.gitignore时,文件才会从未跟踪的文件列表中消失。 我的通配符怎么了?

另外,什么时候需要.gitignore,什么时候应该.gitignore

rm是否有通配符功能,例如.gitignore

更新:类似地,将行.gitignore添加到.gitignore(并非总是可取,但仍然)无效。 这是不是很奇怪,因为过去可能已经跟踪了文件?

Marc asked 2020-08-11T09:46:38Z
1个解决方案
87 votes

好的,尽管通配符不起作用(显然在Windows中),但似乎可以使用以下方法删除整个文件夹:

git rm -r --cached "path/to/foo/"

我了解到--cached仅暂存-您必须git commit才能将其从存储库中删除。

Marc answered 2020-08-11T09:46:49Z
translate from https://stackoverflow.com:/questions/15027873/untrack-and-stop-tracking-files-in-git