2010-06-07 37 views
25

如何撤消在Mercurial中创建分支?例如,如果我发出命令在Mercurial中撤消分支创建

hg branch newbranch 

如果我决定输入了错误的名称,如何删除此分支?我猜这样做很简单,但我还没弄明白。谢谢!

回答

20

如果您还没有提交任何内容,它并没有真正创建。所以只需发出另一个hg branch newname

+0

嗯,看来我已经承诺了那个分支。哎呀。我可以解决。无论如何感谢您的快速解决方案!这仍然有帮助。 – 2010-06-07 18:45:43

+1

在这种情况下,我不认为你可以,因为分支名称是修订的一部分。如果这是重要的,你可以'hg strip'这个分支,然后再做一遍:) – 2010-06-07 19:16:29

+1

Boo!如果其他人已经撤回回购,您不应该在没有包含关于严重和严重风险的警告的情况下提出“剥离”。 – 2010-06-08 14:29:13

2

假设您尚未推送到远程存储库,请启用mq分机并关闭分支。

3

如果它已经COMMITED:

  • hg clone -b branch1 [-b branch2 [-b ..]] oldrepo newrepo,即除了newbranch每一个分支,将导致不newbranch新的回购协议。
  • 如果MQ扩展启用,则hg strip

查找到editing history在库中进行永久性更改。

36

如果您还没有提交,你可以简单地做一个干净的复位按照手册(http://www.selenic.com/mercurial/hg.1.html#commands):

hg branch -C 

这将工作目录的分支名称重置为分支的父,你刚创建。

+0

只是错误地创建了一个没有提交的分支,'hg branch -C'显然是要走的路。 – alwillis 2015-02-10 04:32:00

+0

这最好的回答了标题中提出的问题。 – 2016-08-25 16:19:55

+0

这是真正的答案。 – 2016-09-01 20:37:54