SVN - >具有结构变化的Git迁移

时间:2013-05-20 13:58:59

标签: git svn migration git-svn

我目前拥有以下SVN结构:

  • PROJECT1
    • 分支
    • 躯干
    • 标记
  • 项目2
    • 分支
    • 躯干
    • 标记
  • muchMoreStuff
    • 分支
    • 躯干
    • 标记

最初具有此结构:

  • 项目
    • 分支
    • 躯干
      • proj1
      • proj2
      • moreStuff
      • muchMore
    • 标记

我正在尝试获取独立的Git存储库,一个用于“Project 1”,另一个用于“Project 2”。

问题不同,但与另一个问题相似:Svn -> git migration with several trunk/branches/tags

git svn clone操作只从“SVN head”导入到结构重构。

我需要避免迁移历史的第一部分,因为我的svn repo很大,我试过但是需要几天时间,GIT通常会因outOfMemory异常而崩溃。

有没有办法跟踪svn移动/结构重构操作并获得完整的“Project N”历史记录,避免其余的?

谢谢!

1 个答案:

答案 0 :(得分:-1)

如果你想进行一次性转换(反对使用Git作为前端,同时仍然将SVN服务器保留在后台),则不应使用git-svn。

更好地使用正确的迁移工具,有几个,有几个名为svn2git。我已经用这个做了很好的经验:http://techbase.kde.org/Projects/MoveToGit/UsingSvn2Git你几乎可以做任何你想要的事情,除了让路径落在两个结果存储库中一次运行,但是有两个单独的运行,即使这是可能的。

如果您想首先分析您的历史结构以确保在您知道之前确实没有其他布局,您可能希望首先使用此博客条目中的svneverever:http://blog.hartwork.org/?p=763,这对SVN非常有帮助来自我从一开始就不知道的存储库的Git转换。