我运行了 hg commit --amend
来修改提交,但现在我想回到修改之前的提交。 hg log
中似乎没有显示修改前提交的提交哈希。那么我该怎么做呢?
最佳答案
如果启用 evolve extension ,使用“hg commit --amend”删除的变更集不再被覆盖。相反,它们被过时标记隐藏,但仍然可以查看并恢复到正常的变更集。
要从命令行查看隐藏的变更集,只需将 --hidden 添加到普通命令,例如“hg glog --hidden -l 10”。在 Tortoise 中,过滤器工具栏 (^S) 有一个显示隐藏变更集的图标。
Evolve 还不是官方 Mercurial 的一部分,但应该会成为官方 Mercurial 的一部分。 [如您所见,乌龟已经支持它了。]我已经使用它很长时间了,而且效果很好。这比四处寻找旧包要容易得多,旧包的名称从您不再记得的日期起就被赋予了晦涩难懂的名称。完整的历史记录都在您的本地存储库中。
关于Mercurial:如何在修改后恢复提交,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28182559/