【发布时间】:2010-11-13 13:34:18
【问题描述】:
嘿,我想恢复 Hg 中的一些变更集,但我很难做到。
我无意中进行了一些更改,所以我想撤消它。在尝试了一点之后,我能够hg backout,但它创建了一个新的提交。现在,我希望我的 repo 进入初始状态(没有最后 2 次提交并且我在工作目录中进行了更改)。显然没有办法做到这一点(类似于git reset --soft)。有吗?
我尝试的另一件事是删除最新的提交(恢复原始提交的那个)。这将类似于git reset --hard,但同样没有办法做到这一点。我可以hg update -C,但这更像是git checkout,因为提交仍然存在。
而且,hg update -C -r X 将我恢复到修订版 X,但是当我检查 hg log 时,我无法知道我现在处于哪个修订版。唯一的方法是检查我的 bash 历史记录,对吗?一定有办法知道这一点。
无论如何,我一直在尝试解决这个问题,但找不到任何可以解决它的方法。我发现比较 git 和 hg 命令的参考资料并不准确,因为这些命令的行为并不完全相同。
我想我只是想知道git reset --hard 和 git reset --soft...
谢谢。
【问题讨论】:
-
这不是您的主要问题的答案,但要查看您所在的修订版,请执行
hg summary。如果您仅想查看修订版,请给它一个安静的标志:hg summary -q。