小编典典

为什么 Git 不忽略我指定的文件?

all

我将以下行添加到.gitignore

sites/default/settings.php

但是当我键入git status它时,它会将文件显示为未暂存的文件。

有什么问题?所有其他模式都运行良好。


阅读 124

收藏
2022-05-06

共1个答案

小编典典

确保您.gitignore位于工作目录的根目录中,并在该目录中运行git status并从状态输出 复制
文件的路径并将其粘贴到.gitignore.

如果这不起作用,那么很可能您的文件已被 Git 跟踪。您可以通过 的输出来确认这一点git status。如果该文件未在“已跟踪的文件”部分中列出
则表明它已被 Git 跟踪,它将忽略.gitignore文件中的规则。

在 Git 中忽略文件的原因是它们不会被添加到存储库中。如果你之前添加了一个你想被忽略的文件,那么 Git 会跟踪它,并且会跳过匹配它的忽略规则。Git
这样做是因为该文件已经是存储库的一部分。

为了真正忽略该文件,您必须取消跟踪它并将其从存储库中删除。您可以使用git rm --cached sites/default/settings.php.
这会从存储库中删除文件,而不会实际删除文件(这就是它的--cached作用)。提交该更改后,该文件将从存储库中删除,忽略它应该可以正常工作。

2022-05-06