Skip to content

解决 .gitignore 不生效问题

问题

当修改了 .gitignore 文件的配置后却不能生效,文件依旧被跟踪记录。

可能存在的原因:

如果一个文件已经被 git 追踪,那么即使你在 .gitignore 文件中忽略了它,git 仍然会追踪它。

因此,如果你想让 .gitignore 文件中指定的忽略规则生效,你需要做两件事情:

  1. 取消追踪这个文件
  2. 将其从 git 中删除。

解决方法

省流

可以删除本地记录,重新记录一下当前配置的文件信息

shell
git rm -r --cached [FileName]   # 删除本地缓存信息
git add . # 重新记录,移除 log 中的配置
git commit -m "chore: update .gitignore"

不想输入文件名的话,可以直接使用 . 代替文件名,表示当前目录下的所有文件。

人人都是省流侠!😎

详解

取消追踪一个文件的命令是:

shell
git rm --cached [FileName]

该命令会从 git 中删除该文件,但会保留本地现有的文件,并把该文件从 git 跟踪列表中删除。当你使用该命令后,.gitignore 文件中指定的忽略规则就会生效了。

需要注意的是,一旦你删除了一个被 git 追踪的文件,该文件将不再受版本控制,如果你想再次添加该文件到 git 跟踪列表中,需要使用 git add 命令。

如果你希望同时删除本地的该文件,可以使用以下命令:

shell
git rm -f [FileName]

该命令会同时从 git 中删除该文件,并且将本地的该文件也删除,谨慎使用。

Released under the MIT License.