14

我在我的文件中添加了 .gitignore 和另一个目录.gitignore,但是当我git status,.gitignore仍然出现时!

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

4

4 回答 4

32

正如Carl Norum指出的那样,不允许跟踪文件以使其被忽略。你将不得不打电话

git rm --cached .gitignore

为了让它实际上被忽略。

但是你试图做的是一个非常糟糕的主意。应该跟踪 .gitignore 文件,因此可以确保其中列出的内容实际上在所有客户端计算机上都被忽略了。如果不是这种情况,另一个开发人员可能会向你想要忽略的 repo 添加一个文件,你会遇到麻烦。

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

如果出于某种原因您只想忽略机器上的内容(并且您确信这是个好主意),您需要将其添加到.git/info/exclude. 该文件具有与 相同的功能.gitignore,但不应与其他开发人员共享。

于 2012-12-20T18:32:23.097 回答
3

您的.gitignore文件只忽略未跟踪的文件。由于您可能正在跟踪您的.gitignore文件,因此您将在git status.

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

于 2012-12-20T18:25:04.177 回答
2

停止跟踪 .gitignore 文件:

如何停止跟踪并忽略 Git 中文件的更改?

git rm --cached .gitignore 
于 2012-12-20T18:26:56.733 回答
1

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

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

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

于 2012-12-20T18:26:01.033 回答