2011-12-22 40 views
1

我有一個SVN倉庫,看起來像:如何爲同一個SVN存儲庫中的大量項目製作git-svn回購協議?

\project1 
- branches 
- tags 
- trunk 
\project2 
- branches 
- tags 
- trunk 
\subfolder 
    \project3 
    - branches 
    - tags 
    - trunk 
    \another-subfolder 
    \project4 
     - branches 
     - tags 
     - trunk 
etc 

很可能有100個項目左右,在這裏。我想爲每一個創建git-svn倉庫,最好是反映SVN結構的倉庫。

我最初的想法是編寫一個腳本來遍歷SVN樹,併爲每個項目做一個git svn -d clone,但我想知道是否有更好的方法來做到這一點(或者如果有人構建了一個工具,所以我不必須自己做)。這是合理的,還是有更好的方法來執行這項任務?

+0

[將大型Git存儲庫拆分爲許多較小的可能的重複項](http://stackoverflow.com/questions/3910412/split-large-git-repository-into-many-smaller-ones) – RedFilter

回答

0

我不認爲Split large Git repository into many smaller ones作爲這個問題的重複,尤其是如果你想保持svn和你的git回購之間的聯繫,並且能夠'git svn dcommit'回到SVN回購。

您可以使用一些工具,如svn2git或svneverever,這是一個Python工具,它將幫助您檢測所有正確的項目目錄,以便爲這些人編寫svn2git規則文件。另一種方法是this article(對於多個分支,但也可以應用於多個項目):「Git-SVN?No,Git + SVN」。
即結算您的svn回購的正確部分並初始化其中的git回購。
有關此方法的示例,另請參見「Clone multiple SVN projects with git-svn」。

相關問題