藉此回購結構:如果subrepo屬於兩個主要回購,Mercurial更新不適用於subrepo?
Server (main repo)
ProjectA (subrepo)
SharedLibrary (subrepo)
Client (main repo)
ProjectB (subrepo)
SharedLibrary (subrepo)
SharedLibrary指向同一個文件夾(這是Windows)中,它不是每個主回購協議的單獨副本/克隆。
假設每個主回購具有兩個變更集,0和1(前端部)。我們從1(小費)版本的主要回購開始。
採取以下步驟:
在客戶端回購,更新變更集0.這將更新項目B和SharedLibrary較早,但匹配的修訂版。
項目A現在已經沒有和SharedLibrary同步。步驟1將SharedLibrary更新爲比ProjectA所需更舊的修訂版,該修訂版仍處於1(提示)。
在服務器回購,我們要更新SharedLibrary爲項目A正確的版本,所以我們運行在服務器主回購汞柱更新提示。這不會將SharedLibrary更新爲正確的版本。它使SharedLibrary與第一步一樣修訂。
回到客戶端回購和運行hg的更新提示。 SharedLibrary現在對於ProjectA和ProjectB都是正確的版本。
它出現在服務器repo更新不檢查,看看SharedLibrary是否在正確的修訂版。這是行爲預期,還是有更好的方法來做到這一點?
一個*子*的目的-repo是下*的主要倉庫爲*,那就是*子*手段,別的是不是它是如何打算工作,所以我也不會感到驚訝,它的作品甚少。你需要爲每個克隆它。 – 2012-03-12 14:24:50
@Lasse V. Karlsen,我如何讓SharedLibrary保持一致?在克隆之間推/拉? – 2012-03-12 14:29:36
不,每個克隆都是您推/拉的「中央」主要存儲庫的克隆,即。第三個克隆。 – 2012-03-12 14:30:40