我已經設法將來自多個GIT存儲庫的分支合併到一個新的存儲庫(使用「git filter-branch」和「git fetch/merge」的組合)。但我似乎無法「融合」來自這些分支的標籤......這甚至有可能嗎?就我所知道的(相當有限的)GIT而言,標籤指的是單個提交,它本身是由SHA1哈希值標識的,SHA1哈希值基本上是從所有先前的提交中計算出來的。由於來自不同儲存庫的分支沒有共同的祖先提交,我很難想象如何在一個新的和完全的情況下以一種仍然「有意義」(以GIT方式)重寫標籤的方式無關的存儲庫。在保留所有標記/分支的同時合併多個GIT存儲庫
任何想法?
編輯:爲了澄清我打算做的:
假設我有兩個倉庫,分別名爲「A」和「B」,我想結合成所謂的「C」一個新的存儲庫。
的目錄佈局是一樣的東西
A | |-someFileA |-anotherFileA |-...
B | |-someFileB |-anotherFileB |-...
,合併的倉庫應該像
C | |-A | |-someFileA | |-anotherFileA | |-... | |-B | |-someFileB | |-anotherFileB | |-...
存儲庫在文件結構和歷史方面如何相關?我的意思是他們分享什麼? – CharlesB
這兩個存儲庫共享任何內容(一個存儲庫持有SQL來設置數據庫(模式,存儲過程等),另一個存儲庫存放將在後面訪問該數據庫的Java應用程序。由於Java代碼依賴於特定版本的數據庫模式,這是合理的結合這兩個存儲庫,以便可以在兩個模塊上創建一個標籤 – JavaGuy
我認爲,爲了使任何答案更加完整,您需要(完全)定義您希望* history *看起來像,你可以做幾個子樹合併並完成,並且完全不相交A和B的歷史,但我懷疑你正在尋找某種交錯? – Cascabel