gitignore,如何排除特定目录

gitignore, how to exclude a specific directory

我正在尝试使用 .gitignore 文件来排除特定目录,但我遇到了一些麻烦。我之前在几个论坛(包括 Whosebug)上查找过如何执行此操作,虽然我发现它有点令人困惑,但我以为我理解它,但它似乎并没有像我想的那样工作。

所以我这里有一个存储库,在顶层有一个我想排除的名为 "images" 的特定目录。这是我放入 .gitignore 文件的内容:

images/

我添加并提交了所有内容,一切都很好,它忽略了顶层的图像主管。但后来我意识到它也忽略了forums/images。那有什么关系呢?我如何处理忽略特定目录,而不是任何其他具有相同名称的目录?

您想将根目录设置为 /,这将相对于您的 gitignore 文件的位置。

所以你想要:

/images

这将忽略与您正在使用的 gitignore 文件位于同一目录中的任何名为 images 的文件或目录。

如果您想指定它只匹配图像目录,请添加尾部斜杠:

/images/

尝试根据 .gitignore docs

images/ 更改为 /images/

A leading slash matches the beginning of the pathname. For example, "/*.c" matches "cat-file.c" but not "mozilla-sha1/sha1.c".