如何删除Mercurial书签及其所有更改集?

时间:2014-11-07 12:48:15

标签: mercurial branch

我在工作中使用Git是因为Git是团队的选择。但是,我更喜欢Mercurial用于个人项目。 Git和Mercurial分支模型的区别并不是秘密,Mercurial中的书签就像Git中的分支。我非常喜欢Git分支并且很少使用Mercurial分支,就在我真正需要的时候,更喜欢Mercurial书签。但是,我错过了Mercurial中git branch -d之类的内容,因为删除Mercurial中的书签只会删除书签并保留不可变历史记录。是否可以将Mercurial中的书签及其所有更改集删除到书签已分离的变更集中?

1 个答案:

答案 0 :(得分:2)

一般来说:

hg strip revisions_to_drop

对于你的问题:

hg strip 'not ancestors(heads(all()) - bookmark(name_of_bookmark))'

(即“删除除了书签头之外不是头部祖先的所有修订”)

假设有一个足够新版本的hg:

hg strip -B name_of_bookmark