2015-10-07 17 views
1

早些時候,我們從主應用程序中抽取了一些更穩定的軟件包到不同的mercurial倉庫中。我們與其他一些客戶以有限的方式分享這些客戶,他們通過手工訪問這些客戶,儘管這些外部客戶通常不會打擾或需要及時瞭解我們的變化。 (他們落後了很多個月,並且做得很好,因爲它只有少數幾個接口是交叉的)。是否可以重新整合子項目並重新連接mercurial歷史記錄?

分離成獨立的存儲庫使我們的效率降低,這是有爭議的(a)它更重對其他瓶子進行更改,有時我們不打擾,(b)查閱涉及兩個或更多回購庫更改的功能的更改歷史記錄更加困難。

我們正在考慮將它們帶回主存儲庫,但我想知道現在有什麼方法可以重新連接歷史記錄嗎?理想情況下,我希望能夠追蹤給定代碼文件的歷史記錄,逐步完成最近的更改,在分離階段進行更改,並希望在將其分開之前進行更改。那可能嗎?

回答

0

我想你可以將所有單獨的歷史記錄放入一個存儲庫(hg會抱怨它們不相關,但是如果你堅持,它會讓你繼續),然後正常合併它們(將它們分別移到不同的目錄中他們的分支,然後以某種方式將它們合併到一個地方),或者您可以使用convert,export/import和mq來過濾歷史記錄,但這將很難實現。

+0

你可以編輯使這些過程更具體嗎?我不確定如何實施它們才能試用它們。 –

+0

只要做一個'hg pull --force'(沒有'--force' Mercurial就會中止一個錯誤'unrelated repository'),然後在每個分支中做幾個'hg mv'如果目錄結構不' t匹配,然後正常合併它們。 – andrewsh

+0

這有點冒險,但它會起作用,並且兩個歷史記錄都可以從同一個存儲庫訪問。 – andrewsh

相關問題