在特定的提交中从git / svn repo推送到git / branch

时间:2014-02-25 15:12:56

标签: git git-svn git-branch

有一次,SVN回购被克隆在提交c75e75c。一个团队在git / master上工作,另一个团队在SVN工作。

  • 我们在svn repo上使用git-svn。
  • 我可以将svn/trunk合并到git/master,但这可能非常糟糕 可怕。所以我更喜欢将c75e75c之后的所有提交推送到branch/app_v2
  • 在提交c75e75c之后,git / branch只是svn / trunk的副本。

enter image description here

尝试使用git push <remotename> <commit SHA>:<remotebranchname> How can I pushing specific commit to a remote, and not the previous commits?。我创建了一个远程分支/ app_v2。但是git-svn和git repo上的提交SHA并不相同。即使他们有共同的历史。

如何推送一系列提交(在c75e75c和HEAD之间)并推送到远程分支(branch / app_v2)?

1 个答案:

答案 0 :(得分:0)

好的,这是食谱:

在Git repo上

,创建远程分支(注意它与SVN的c75e75c版本相同,但在其他git repo上没有相同的名称)

git checkout -b <branch_name> <revision_hash>

然后将分支推送到远程仓库

git push origin <branch_name>
在SVN repo上

,回滚到修订版推送

git checkout c75e75c

推送到远程分支

git push origin <current_locale_branch>:<branch_name> 

有问题吗?