我有一个完整的repo的git-svn checkout(按照标准方式初始化:git svn init -t tags -b branches -T trunk $repo_url,然后git svn fetch)。我手动执行了svn copy $repo_url/branches/branch1 $repo_url/branches/branch2。然后运行了git svn fetch,git checkout -b local-branch2 branch2,对branch2进行了一些提交,将它们dcommit回SVN repo,完成了对branch2的工作。(为什么要分支?我想在本地git上修改这个分支,但仍然提交到SVN并从几个同事那里得到帮助)。
我没有合并branch2的工作到branch1中。如果我git checkout -b local-branch1 branch1,然后git merge branch2,它只是快速转发我的local-branch1指针到branch2的位置。
相反,我希望git重新播放从启动branch2以来所做的所有提交到branch1中,以便我可以将每个提交都dcommit到SVN repo。似乎有一种方法可以做到这一点,但我想不出来。也许是git rebase,或者对在branch2上进行的每个提交进行git cherry-pick?(尽管后者有点繁琐)。我不想将两个URL合并到一起,因为那会带来很多麻烦。
有什么想法吗?这其中的哪些部分需要更多的解释?
我没有合并branch2的工作到branch1中。如果我git checkout -b local-branch1 branch1,然后git merge branch2,它只是快速转发我的local-branch1指针到branch2的位置。
相反,我希望git重新播放从启动branch2以来所做的所有提交到branch1中,以便我可以将每个提交都dcommit到SVN repo。似乎有一种方法可以做到这一点,但我想不出来。也许是git rebase,或者对在branch2上进行的每个提交进行git cherry-pick?(尽管后者有点繁琐)。我不想将两个URL合并到一起,因为那会带来很多麻烦。
有什么想法吗?这其中的哪些部分需要更多的解释?