2010-07-22 63 views
6

最近(我自己 - 没有其他开发人员)从事项目工作时,我以某种方式设法严肃地将历史与来自克隆存储库的一些(显然)糟糕的合并进行了严肃的对比。Mercurial:修复一个博客历史

我想怎么办 - 需要做 - 是只(根据hg glog

是的,我有borking后作出的代码进行一些更改删除最后8所提交解决这个问题然而,只是在这里或那里只做了一些调整 - 我无法从记忆中恢复。

我该如何摆脱最后8次提交,并从我搞乱的地方重新开始?

回答

11

克隆你的仓库 - 当你这样做时,你可以指定应该被克隆的最后一个提交。

所以,如果你的资料​​库有100名的变更,你想摆脱的变更93到100的,只是这样做:

hg clone -r 92 BadRepository CleanRepository 

- >的CleanRepository将只包含的变更1至92

如果使用TortoiseHG,你可以做同样的克隆对话框(有一个文本框“克隆修订”)

+3

这个答案并不包括一般情况下,你最终得到的部分回购,如果有在源回购中有一些分支。 – piotr 2011-05-10 16:21:09