如何同步两个git-svn repos

时间:2011-06-30 22:49:53

标签: svn git git-svn

我必须使用subversion存储库,我想使用git-svn。我有时会切换计算机,此刻我需要提交更改并更新另一台计算机。有时更改的代码不起作用,所以我的想法是创建两个git-svn repos并使用push / pull同步它们,有时将它们(或其中一个)与svn存储库同步。这可能吗? 将存储库切换到git是没有选择的。 (不幸的是)

2 个答案:

答案 0 :(得分:3)

如果你需要从你的两台计算机同步SVN你的Git仓库,那么是:每个仓库将是一个“git-svn”仓库。
你创建2个repos,然后在git-svn之上创建你自己的git分支集。

但是你不能合并/推/拉任何将被重新提交给SVN的分支:你需要注意CAVEATS section of git-svn

  

为了简化和与Subversion互操作,建议所有git svn用户clonefetchdcommit直接来自SVN服务器,并避免全部git存储库和分支之间的git clone / pull / merge / push操作。在git分支和用户之间交换代码的推荐方法是git format-patch和git am,或者只是'dcommit'ing到SVN存储库。

     

不建议您在计划git merge的分支上运行git pulldcommit,因为Subversion用户无法看到您所做的任何合并。此外,如果来自作为SVN分支镜像的git分支的mergepulldcommit可能会提交错误的分支。

答案 1 :(得分:2)

我会说rsync这两台机器上的两个回购。你会有相同的回购。