我有一个 SVN 存储库,其当前结构如下:
最初具有以下结构:
也就是说,该项目被分成两个单独的“子存储库”(或者任何你想称呼的名称)
有什么方法可以将其迁移到 git而不丢失历史记录吗?对于这种情况,svn2git 会比 git-svn 更好吗?还有其他迁移工具吗?
编辑:我按照建议尝试了 git svn clone ,但正如我所想,它没有遵循从旧结构到新结构的转变。它仅导入新结构的修订。
首先我将主干转换为 git:
git svn clone url-to-project -s
Run Code Online (Sandbox Code Playgroud)
然后我转换了每个项目:
git svn clone url-to-project1 -s
git svn clone url-to-project2 -s
...
Run Code Online (Sandbox Code Playgroud)
然后,对于每个项目,我使用移植物和过滤器分支附加主干的先前历史记录。
我刚刚在博客上谈到了这一点。