我有一个类似的SVN存储库:
\project1
- branches
- tags
- trunk
\project2
- branches
- tags
- trunk
\subfolder
\project3
- branches
- tags
- trunk
\another-subfolder
\project4
- branches
- tags
- trunk
etc
这里可能有100个左右的项目。我想为每个创建git-svn repos,最好是一个反映SVN结构的repos。
我最初的想法是编写一个脚本来走SVN树并为每个项目做git svn -d clone
,但我想知道是否有更好的方法来做到这一点(或者如果有人建立了一个工具,那么我不必自己做)。这是合理的,还是有更好的方法来执行这项任务?
答案 0 :(得分:0)
我不认为Split large Git repository into many smaller ones是这个问题的副本,特别是如果你想维护svn和你的git repos之间的链接,并且能够'git svn dcommit
'回到SVN回购。
您可以使用svn2git或svneverever这样的工具,这是一个Python工具,它可以帮助您检测所有正确的项目目录,以便为这些目录编写svn2git规则文件。
另一种方法由this article说明(对于多个分支,但也可以应用于多个项目):“Git-SVN?No,Git + SVN”。
即检查你的svn repo的右边部分并在其中初始化一个git repo
有关此方法的示例,另请参阅“Clone multiple SVN projects with git-svn”。