2014-07-17 90 views
0

svn-all-fast-export看起來是從svn轉移到git的好方法,它支持將一個svn存儲庫分成多個git存儲庫。合併存儲庫時從svn轉換爲git的最佳方式是什麼?

我想做相反的事情。我有一套密切相關的svn倉庫。它們都在同一分支名稱的同一時間分支。所有存儲庫中的標記都是相同的。我想將它們合併到一個git倉庫中,並將每個svn倉庫中的文件放在它自己的子目錄中。我希望交叉歷史記錄,例如,按照日期順序,在每個存儲庫中提交主幹以git形式出現。

與軀幹更具體地說,我擁有svn庫的提交編號顯示時間順序(提交每個分支看起來相似):

A 
    commit 1 
    commit 4 
B 
    commit 2 
    commit 3 
    commit 8 
C 
    commit 5 
    commit 6 
    commit 7 

我想轉換爲混帳以下幾點:

bigproject/ 
    A/ 
    B/ 
    C/ 

隨着主人歷史,看起來像:

commit 1 
commit 2 
commit 3 
commit 4 
commit 5 
commit 6 
commit 7 
commit 8 

可以使用svn,所有快速-E xport做到這一點?我還沒有找到它的任何例子。是否有另一個現有的工具來做到這一點?

回答

1

我在之前的項目上使用了SubGit來執行Subversion到Git遷移,這比您要完成的操作稍微簡單一些。就個人而言,我在SubGit之前嘗試過使用多種遷移工具,並對整體可用性和常識配置選項感到驚喜。

下面的文章也有一些想法,你如何利用像SubGit這樣的工具來完成你的任務:https://serverfault.com/questions/420828/migrate-multiple-svn-repositories-into-single-git-repository。但再一次,我肯定會推薦SubGit,比如git-svn橋,這個橋是內置於git中的(似乎有時非常脆弱),用於基本的遷移任務。

相關問題