2010-06-07 100 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