git - 如何让 Git 忘记已跟踪但现在位于 .gitignore 中的文件?

标签 git gitignore git-rm

我把一个之前被 Git 跟踪的文件放到 .gitignore 列表中。但是,该文件在编辑后仍显示在 git status 中。我如何强制 Git 完全忘记该文件?

最佳答案

.gitignore 将阻止将未跟踪的文件添加(无需 add -f)到 Git 跟踪的文件集中。但是,Git 将继续跟踪任何已被跟踪的文件。

要停止跟踪文件,我们必须将其从索引中删除:

git rm --cached <file>

以递归方式删除文件夹和文件夹中的所有文件:

git rm -r --cached <folder>

从头版本中删除文件将在下一次提交时发生。

警告:虽然这不会从您的本地机器上删除物理文件,但它会在其他开发人员的下一次 git pull 中删除这些文件。

关于git - 如何让 Git 忘记已跟踪但现在位于 .gitignore 中的文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40937216/

相关文章:

git - 将 git 存储库中的文件夹拆分为单独的分支

git - Visual Studio 解决方案与 Git 项目和 TFS 项目混合

git - 从 git 存储库历史记录中删除文件

git - 为什么有两种方法可以在 Git 中取消暂存文件?

git - 如何撤消 "git rm -r -f * "

git - 如何使用 jenkins 在 git 中获取更改的文件列表

git - 为什么带有双星号的 glob 模式与子目录中的任何内容都不匹配?

Git - 在 merge 时忽略文件但仍将其推送到远程

gitignore 文件夹中的所有文件但保留文件夹结构

git - 在 'git rm -rf' 之后恢复暂存但未提交的文件