svn到git的适当Git工作流程

时间:2014-10-04 15:13:17

标签: git svn

假设我们有两个团队:TeamA和TeamB TeamA维护着历史项目" ProjectA"使用颠覆,并且TeamB在几个月前分叉项目以创建" ProjectB"在 Git 下维护 实际上,ProjectB是ProjectA +一些额外的目录和文件,并且必须保持这种状态。因此,TeamB必须定期将ProjectB与ProjectA同步(比如说,每当ProjectA被视为"稳定"足够)时,也就是说必须重播ProjectA的所有提交。项目B。

(从长远来看,ProjectA将被放弃,ProjectB将成为主要项目。)

定期向ProjectB git master分支报告所有trunk svn提交的正确方法是什么? 我永远不需要执行反向操作(Git => SVN超出范围)。
目前,我使用git-svn来挑选ProjectA上个月的提交范围,并将它们应用于ProjectB的主分支。 但它需要搜索我上个月申请的最后一个SVN提交,以便挑选出良好的提交范围。

我想知道如果不是樱桃选择,我可以使用Subversion repo的持久Git镜像,并且每个月使用一个简单的svn合并或类似的东西。

对此有通常的工作流程吗?

1 个答案:

答案 0 :(得分:1)

svn repo的持久git镜像正是我要做的。但它不必是ProjectB仓库的独立存储库 - 只需要一个与ProjectA的svn repo完全对应的分支,并使用git svn rebase定期更新它。 (尽管有这个名字,git svn rebase基本上只是一个拉动,只要你自己不向该分支提交任何东西。)然后使用像git merge这样的普通git工具来获取那些东西。分支到ProjectB开发分支。