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

ram*_*am1 7 git

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

.gitignore的内容:

images/builder/
Run Code Online (Sandbox Code Playgroud)

the*_*rin 13

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

  • 同意,您应该添加 .gitignore 文件,以便每个人都共享它。 (2认同)
  • 让我们明确一点:你*可以*将它添加到 .gitignore,但你不应该。你*应该*提交它。(不仅仅是“可能”。) (2认同)
  • @manojlds:*完全是*。您希望*每个人*忽略某些事情,例如构建产品(对象,库,可执行文件,由automake生成的makefile ...),运行日志以及适用于您项目的任何其他内容。如果您只有某些事情需要忽略,请将它们放在`.git / info / exclude`中。 (2认同)

sno*_*rpe 5

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

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

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

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

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

    git config --global core.excludesfile ~/.gitignore
    
    Run Code Online (Sandbox Code Playgroud)

    [由于这是一个全球性的设置,你只需要做一次.]

    因此,对于我的Emacs的备份文件,我添加了一个类似的图案*~~/.gitignore.

  3. 您想要的东西在特定的工作树中"本地"排除,但可能不在其他工作树中排除.

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

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