我想让git忽略名为“Doxyfile”的文件,我添加了一个.gitignore文件,但它仍然尝试 跟踪文件。
我在下面添加了我的步骤,我错过了一步?
$ ls -a
.git .gitignore README
$ cat .gitignore
.DS_Store
Doxyfile
*~
$ touch Doxyfile
$ ls
Doxyfile README
$ git status -s
?? Doxyfile
答案 0 :(得分:1)
我唯一能想到的是你的.gitignore中“Doxyfile”行的末尾有一个额外的空格,这会导致这个。
答案 1 :(得分:1)
这可能是一个非常简单的错字。
确保.gitignore中的文件名之前和之后都没有空格。添加空格将破坏预期的行为。
在这里,我遇到了类似的问题,因为我错过了配置变量中间的's': Why doesn't my global .gitignore file ignore?
检查并仔细检查所涉及的所有文件名。
答案 2 :(得分:0)
也许Doxyfile已经被添加到了repo中,即使它在你运行ls时不存在于本地?如果是这样,首先备份它,然后git rm Doxyfile
并确保它在你的.gitignore中。承诺这一改变。然后将文件移回到repo的文件夹中,这次应该被git忽略。
答案 3 :(得分:0)
如果您达到了git用法的高级水平,可以了解它的工作原理,并且认为它应该忽略文件而不能忽略文件,则只需要以下三个命令:
git rm -r --cached .
git add .
git commit -m '.gitignore synchronised'
这完成了从索引中删除所有内容的所有必要步骤,再次添加了所有内容。但是,当添加git时始终会查找.gitignore
文件,此时,其中提到的所有内容都不会添加到索引中。
.gitignore现在可以完成您期望的操作