Git/SVN互操作(保留两个存储库的历史记录)

Git/SVN互操作(保留两个存储库的历史记录),git,git-svn,Git,Git Svn,我正在为一个应用程序开发一个软件模块,该应用程序由一个使用基于SVN的开发过程的客户拥有。到目前为止,我一直在使用自己的Git存储库来完成这项工作 现在,该模块已经足够成熟,可以成为客户机SVN树的一部分。我以前做过一些基于git svn的工作,但从来没有使用过两个最初独立的存储库(git部分总是从svn中克隆出来的) 是否可以将一个独立的git存储库“注入”到Subversion存储库中,并让他的历史也成为SVN的repo的一部分?在此之后,在svn之上使用git svn的“正常”工作应遵循。

我正在为一个应用程序开发一个软件模块,该应用程序由一个使用基于SVN的开发过程的客户拥有。到目前为止,我一直在使用自己的Git存储库来完成这项工作

现在,该模块已经足够成熟,可以成为客户机SVN树的一部分。我以前做过一些基于git svn的工作,但从来没有使用过两个最初独立的存储库(git部分总是从svn中克隆出来的)


是否可以将一个独立的git存储库“注入”到Subversion存储库中,并让他的历史也成为SVN的repo的一部分?在此之后,在svn之上使用git svn的“正常”工作应遵循。

我建议如下:

  • git svn clone
    Subversion存储库

  • 将现有的git存储库添加为git svn repo中的远程存储库(我们称之为
    mod

  • 将您的模块工作放入git svn repo并签出到新分支:

    git fetch mod&&git checkout mod/master-b mod svn

  • 使用
    git svn Rebase
    根据最新版本从subversion重新设置分支的基础。在这一点上,您应该有一个线性历史,从Subversion到所有模块工作

  • git svn dcommit
    将模块工作保存到Subversion中