使用重命名的trunk进行SVN to Git转换

时间:2013-02-13 21:09:39

标签: git svn git-svn

我有一个多项目SVN存储库,我试图将其转换为多个Git存储库,每个项目一个。

我可以使用git-svn处理这部分,我已经找到了多个HOWTO类型的文档,但是我遇到麻烦的是当前项目之一是通过重命名和合并SVN中不同项目的部分来创建的多次。在SVN中,我可以通过重命名/移动来查看单个文件的历史记录,但是当我使用git-svn并指定项目的trunk目录的当前位置时,它只会将历史记录转换为布局更改的位置,I当主干从不同的路径移动时,会丢失所有旧的历史记录。

具体来说,我的存储库布局看起来像这样:

/projectA/trunk/src/com/mycompany/projectA/MyClass.java
/projectB/trunk/src/com/mycompany/projectB/OtherClass.java

这转换为:

/trunk/projectA/src/com/mycompany/projectA/MyClass.java
/trunk/projectB/src/com/mycompany/projectB/OtherClass.java

然后重命名并将src目录合并到一个公共主干上:

/combined-project/trunk/src/com/mycomany/projectA/MyClass.java
/combined-project/trunk/src/com/mycomany/projectB/OtherClass.java

所以,如果我跑:

git svn clone --trunk=/combined-project/trunk

然后我得到一个git存储库,历史记录只返回到最近的重命名。有没有人对如何通过重命名让git svn clone跟随trunk回复有任何建议?

0 个答案:

没有答案