使用 mercuial 修复文件重命名错误

Fixing file rename mistake with mercuial

我有一种情况,我重命名了我在 mercurial repo 中跟踪的几个文件,而没有使用 hg rename 命令(只是通过文件系统进行)。

这发生在几次修订之前

现在我想 return 在文件重命名之前修复一个错误,然后重建那个旧版本

我遇到的问题是我收到以下错误消息:

remote changed file.txt which local deleted

use (c)hanged version or leave (d)eleted?

有什么方法可以解决我在所有这些修订之前重命名文件时犯的错误吗?

取决于您是否承诺删除文件,但我认为您没有,而且看起来也没有。

然后您可以简单地还原它们,以便将它们恢复到您的工作目录:hg revert file.txt。之后你可以更新到以前的版本而不会弹出这个问题。或者只需更新到您要修复的先前版本并接受来自远程的 (c) 更改版本。

如果您希望重命名是永久的并且也被存储库跟踪,那么提交该重命名。使用 hg addremove,可能首先检查 --dry-运行 它做了什么,这样就不会添加不需要的更改并提交文件的重命名。然后去更新到旧版本并做任何你想在那里提交的更改。