我公司的產品是基於模塊的,這意味着我們配有五個基本模塊,用戶可以購買額外的模塊。我們使用的Mercurial是我們相對較新的源代碼管理產品,而且自從我們發佈了1.0版本的產品以來,管理單獨的模塊開發一直是一場噩夢。如何使用Mercurial管理產品的多個版本?
我們希望能夠在不必等待特定模塊開發完成的情況下發布小修補程序更新,因此,一切的回購並不能很好地工作。我閱讀了分支,但權威指南似乎表明分支是暫時的,並且與它合併很困難。
理想情況下,我們有一個基本回購是產品,然後是額外模塊的不同回購(或分支機構),這樣QA可以分別構建主要產品和主要+插件,而開發人員ModuleA不會影響使用BugfixB的開發人員。我嘗試過使用多個subrepos,但最終導致我的存儲庫被破壞。
我應該看看使用命名分支嗎?還是書籤?
我在尋找關於如何利用Mercurial功能使此過程更輕鬆的最佳實踐的建議。
謝謝!
我們正在使用subrepos,但所有真正簡化的是目錄結構。我不確定每個模塊的產品完整副本的單獨回購最有意義。 – 2010-08-04 04:14:52
這個想法是,如果每個模塊都在一個subrepo中,您可以爲您正在使用的模塊提供最新版本的subrepo,並將模塊的其他subrepos留在最近的「穩定」狀態。同時主要產品在主目錄中,因此您可以隨時更新它。 – Amber 2010-08-04 06:40:04
對,這就是我們正在做的事情,但它不能很好地工作。回購是巨大的,每次他們克隆,他們變得更大。他們很容易腐敗。 – 2010-08-04 14:34:53