2012-04-04 46 views
0

我必須分開Mercurial存儲庫。一個是該項目的主幹,另一個是具有一組附加更改的分支。如何將兩個Mercurial回購合併爲一個

項目存儲庫有一箇中心位置,其中我希望主幹和分支都可用。我想要做的是將兩個存儲庫合併成一個存儲庫,但仍允許通過標籤或類似的東西訪問分支。這將允許開發人員簽出主代碼,但如果需要進一步更改,也可以切換到分支上工作。我也想確保幹線中的任何代碼都不會意外地進入分支。對分支的任何更改應該是明確的和有意的。

完成此操作的最佳方法是什麼?

+0

你有沒有試過從後者的存儲庫中拉入中央回購? – bvulaj 2012-04-04 16:03:26

+0

不需要。我是否需要先標記分支? – 2012-04-05 15:44:02

回答

1

正如Brandon所說,只需將分支回購推到幹線,或將分支拉入幹線。

然後,您可以選擇是否要將分支&中繼合併在一起,或將它們分開。如果您從分支推送到幹線,您可能會收到關於多個頭部的警告。如果你想讓它們分開,只需要按-f。 (拉可能不會給出警告)

您可以將分支更改合併到主幹,並且如果需要,仍然可以在分支上進行進一步的工作。一般來說,我爲每一個版本添加標籤,這樣我就可以輕鬆回到任何發佈的內容。

創建分支時,是否將其克隆到其他目錄?如果是這樣,在將其拉入主幹倉庫後很難找到分支。您可能需要閱讀bookmarks來標記分支。另請看how multiple heads work.

注意:另一種選擇是使用named branches永久標記分支。稍後您不需要做任何額外的切換。

+0

是的,我相信這個分支是被克隆的,後來這個樹幹也被克隆了出來,都是作爲獨立的操作。我也喜歡標籤。多頭網頁是我正在尋找(但無法找到:-)謝謝。 – 2012-04-05 15:49:20

+0

那麼有什麼更好的,書籤或命名分支? (文檔讓我懷疑書籤是建立在分支上的?) – 2012-04-05 15:50:11

+0

這取決於你想如何使用它們。我不是專家,但命名分行名稱是永久性的,書籤更加流暢。他們可以被刪除。它們是在存儲庫中標記開發分支的兩種獨立方法。另一種方法是通過克隆到單獨的回購。 – 2012-05-03 16:19:53