You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何限制Git追踪/更新本地变更?.gitignore配置失效排查

搞定Git追踪限制:让README.md不受分支更新影响

嘿,我知道你现在卡在哪了——很多新手都会踩这个坑:.gitignore只对未被Git追踪的文件生效,如果你的README.md之前已经提交到仓库过(也就是被Git标记为追踪状态了),那后续加进.gitignore里根本没用!

下面给你分步解决这个问题:

第一步:停止Git对README.md的追踪(保留本地文件)

首先要把README.md从Git的追踪索引里移除,但绝对不能删掉本地的文件,所以用这个命令:

git rm --cached README.md

这里的--cached参数是关键——它只修改Git的索引(也就是告诉Git“别再管这个文件了”),本地的README.md会完完整整保留下来。

第二步:提交并推送这个变更

接下来把这个“停止追踪”的操作提交到本地仓库:

git commit -m "Stop tracking README.md to preserve local changes"

然后推送到远程服务器:

git push

这样远程仓库也会更新这个设置,其他协作者拉取后也会同步这个规则。

第三步:检查你的.gitignore格式

看你贴的.gitignore内容,格式有点小问题:

// .gitignore # readme README.md LICENSE

Git的.gitignore里,#开头的是注释,所以# readme是注释内容,不会生效。正确的格式应该是每行一个要忽略的文件:

# 忽略README.md和LICENSE
README.md
LICENSE

这样Git才能正确识别要忽略的文件。

临时方案:如果不想永久停止追踪

要是你只是暂时不想让本地的README.md被分支更新覆盖,不想修改远程仓库的话,可以用这个本地命令:

git update-index --assume-unchanged README.md

这个命令是告诉Git:“我本地改这个文件你别管,别把它当成未提交的变更,也别在拉取更新时覆盖它”。注意这个设置只在你本地生效,不会同步到远程,哪天想恢复追踪了,用:

git update-index --no-assume-unchanged README.md

这样操作完,你的README.md就不会再受Git分支更新的影响啦!

内容的提问来源于stack exchange,提问作者Max Wolfen

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 07:36:20