我必须使用subversion存储库,我想使用git-svn。我有时会切换计算机,此刻我需要提交更改并更新另一台计算机。有时更改的代码不起作用,所以我的想法是创建两个git-svn repos并使用push / pull同步它们,有时将它们(或其中一个)与svn存储库同步。这可能吗? 将存储库切换到git是没有选择的。 (不幸的是)
答案 0 :(得分:3)
如果你需要从你的两台计算机同步SVN你的Git仓库,那么是:每个仓库将是一个“git-svn”仓库。
你创建2个repos,然后在git-svn之上创建你自己的git分支集。
但是你不能合并/推/拉任何将被重新提交给SVN的分支:你需要注意CAVEATS section of git-svn:
为了简化和与Subversion互操作,建议所有
git svn
用户clone
,fetch
和dcommit
直接来自SVN服务器,并避免全部git存储库和分支之间的gitclone
/pull
/merge
/push
操作。在git分支和用户之间交换代码的推荐方法是git format-patch和git am,或者只是'dcommit'ing到SVN存储库。不建议您在计划
git merge
的分支上运行git pull
或dcommit
,因为Subversion用户无法看到您所做的任何合并。此外,如果来自作为SVN分支镜像的git分支的merge
或pull
,dcommit
可能会提交错误的分支。
答案 1 :(得分:2)
我会说rsync
这两台机器上的两个回购。你会有相同的回购。