多人协作公共分支:已提交文件加入.gitignore后仍被推送,是否需全员执行git rm --cached
Git协作中忽略已提交文件的解决方法
结论是必须让所有队友在本地执行git rm --cached a.txt(也就是你的package-lock.json),同时同步更新各自的.gitignore文件,不然只要有队友没做这个操作,他们推送代码时会把该文件重新传到远程仓库,你拉取后本地的忽略规则就会失效。
具体要做的事:
- 先确认公共分支上已经正确提交了两个关键变更:更新后的
.gitignore(已添加a.txt)、git rm --cached a.txt后的追踪移除记录。 - 通知所有队友执行以下操作:
- 拉取公共分支的最新代码,确保本地的
.gitignore是最新版本 - 在本地分支执行
git rm --cached a.txt(这步只会取消Git对该文件的追踪,不会删除本地的a.txt文件) - 提交这个变更并推送到公共分支
- 拉取公共分支的最新代码,确保本地的
额外提醒:如果团队确认不需要保留本地的a.txt,也可以直接删除本地文件后再提交推送,但要统一操作避免冲突。
内容的提问来源于stack exchange,提问作者Littlee
相关产品推荐
相关产品推荐

