.gitignore并不是在忽视自己

时间:2012-12-20 18:20:22

标签: git gitignore

我将.gitignore和另一个目录添加到我的.gitignore文件中,但当我git status时,.gitignore仍在显示!

我觉得我错过了一些非常明显的东西。

4 个答案:

答案 0 :(得分:22)

正如Carl Norum指出的那样,不允许跟踪文件以便被忽略。你必须致电

git rm --cached .gitignore

以便实际忽略它。

但是你要做的是一个非常糟糕的主意。应该跟踪.gitignore文件,因此确保在所有客户端计算机上实际忽略了其中列出的内容。如果不是这样的话,另一个开发者可能会向你想要忽略的仓库添加一个文件,你就会遇到麻烦。

即使运行上述命令也可能会造成麻烦,因为它会为每个开发人员删除该文件。

如果由于某种原因你想忽略你机器上的东西(并且你确定这是一个好主意),你需要将其添加到.git/info/exclude。该文件与.gitignore具有相同的功能,但不应与其他开发者共享。

答案 1 :(得分:3)

您的.gitignore文件只会忽略未跟踪的文件。由于您可能正在跟踪.gitignore文件,因此您会在git status的输出中看到对其进行的更改。

如果您想忽略某些内容但又不想将其签入,请将其添加到全局git ignore文件中,而不是将其添加到存储库中。

答案 2 :(得分:1)

停止跟踪.gitignore文件:

How to stop tracking and ignore changes to a file in Git?

git rm --cached .gitignore 

答案 3 :(得分:0)

可能是因为您过去已经添加了.gitignore文件。

  

请注意,git不会忽略在a之前已经跟踪过的文件   规则已添加到此文件中以忽略它。在这种情况下,文件必须   未经跟踪,通常使用git rm --cached filename

来自https://help.github.com/articles/ignoring-files