Untrack文件但不删除它

时间:2018-05-04 12:11:00

标签: git

如何解除文件但不从上游删除文件?

当我尝试执行:git rm --cached "file"时,它会将其删除。

然后我添加并提交并推送它。现在该文件已从上游删除。

这不是我想要的。我希望它仍然在上游,但不再追踪我本地的变化。可以这样做吗?

1 个答案:

答案 0 :(得分:1)

你想:

git update-index --skip-worktree <path-name>

这将忽略所有本地更改,但仍会跟踪其他遥控器中的文件。这还有一个额外的好处,即显示遥控器上的文件是否发生了变化,并正确管理它 - 显示与您当地的冲突等。

不要使用--assume-unchanged - 这没有适当的安全措施,如果遥控器更改了文件,并且再次开始重新训练,则会执行覆盖本地更改而不发出警告的事情。

有关差异的详情,请参阅this和关联的博客文章。