8
可以說我在RepoX中有兩個分支叫做BranchA和BranchB。 RepoX也有一個名爲SubmoduleY的子模塊。Git:合併和子模塊
BranchA具有SubmoduleY在修訂 'ABC',BranchB有SubmoduleY在修訂 '高清'。
說我要BranchA合併到BranchB,但我要離開BranchB的SubmoduleY指向原來的「高清」的修訂工作。我看到這樣做的幾種方法:
方法1:
- 結帳BranchB。
- 將SubmoduleY移動到修訂版'abc'以使實際合併變得無痛(我們現在不想在子模塊級別進行任何合併)。
- 提交SubmoduleY的新版本(我們不能讓它爲合併浮動)。
- 將BranchA合併到BranchB中。解決任何衝突。
- 將SubmoduleY移回修訂版「def」。
- 提交SubmoduleY的新版本。
- 推動更改爲主回購。
方法2:
同方法1,但是在做第6步,重訂,擺脫多餘的子模塊的步驟提交3
兩者似乎有惱人的缺點:
方法1將兩個額外的提交放入歷史記錄。
方法2忘記任何改變與子模塊的修改做的,因爲這些提交移除。因此,以後的任何合併都將不得不再次處理一些問題。
有沒有更好的方法?
不錯的解決方案!謝謝。 – Ben 2010-12-08 17:56:01