当我运行git status时,.gitignore会出现

时间:2011-10-21 04:12:04

标签: git

当我运行git status时,.gitignore列在未跟踪文件下。如何防止它被列出?

.gitignore的内容:

images/builder/

4 个答案:

答案 0 :(得分:12)

您可以将.gitignore添加到.gitignore文件中,但您可能只想提交它,因为您的所有团队成员(如果有其他人)可能会拥有相同的文件列于.gitignore

答案 1 :(得分:5)

为了澄清别人所说的内容,有三种类型的东西被排除在外,git对每个类别使用不同的排除文件:

  1. 项目的每个人都希望排除 - 例如*.o,生成的可执行文件的名称,以及您不想签入的其他生成生成的文件。

    对于这种情况,您在项目目录中使用.gitignore(正如您所做的那样)。由于您希望每个参与项目的人都共享这些排除项,因此您应该使用.gitignore添加这些git add文件并将其作为源文件提交。

  2. 您个人想要为所有项目排除的东西,但是在同一项目上工作的其他人可能不会。例如,我使用Emacs编辑器创建备份文件,如Foo.~1~,这是我个人排除的所有git签出

    对于这种情况,您使用“个人”忽略文件,通常在您的主目录中称为~/.gitignore;该文件的名称实际上被设置为全局git参数,例如,您可以这样做:

    git config --global core.excludesfile ~/.gitignore
    

    [因为这是一个全局设置,你只需要做一次。]

    因此,对于我的Emacs备份文件,我向*~添加了~/.gitignore这样的模式。

  3. 您想要在特定工作树中排除“本地”的东西,但可能不会用于其他工作树。

    对于这种情况,您应该将排除条目添加到.git/info/exclude文件中。由于此文件位于magic .git目录下,因此status命令永远不会将其显示为未跟踪的文件(并且您无法添加它)。

  4. Git一起使用所有这些排除文件来决定排除的内容。

答案 2 :(得分:2)

提交文件。
然后它会离开清单。
(我最初发现这个令人困惑。)
您仍然可以编辑它以便将来添加更多项目 然后再次提交忽略它们

答案 3 :(得分:2)

.gitignore应该是您代码的一部分。你肯定不想排除,因为这是告诉你的队友(或你自己在另一台电脑)不应该提交哪些文件的方式