Git-SVN:我怎样才能将分支合并到主干?

时间:2013-06-03 07:20:31

标签: merge git-svn

我正在开发一个带有两个分支的git-svn项目,让我们调用它们

trunk
branches/foo

如何将branches / foo合并到trunk?

他们都有最新的更新

由于

2 个答案:

答案 0 :(得分:0)

不建议通过Git合并两个SVN分支。如果你在Git中从你的branches/foo克隆合并到你的trunk克隆,然后设法成功推回到SVN,文件将在trunk上正确更新,但SVN不会意识到这是合并的结果 - 在SVN中不会更新合并跟踪信息。

实际上它变得比这更复杂 - 当你在两个跟踪远程SVN repos的Git分支之间合并时,git-svn可能会变得非常混乱,并且很容易搞乱你的存储库。这是因为git-svn通过您的Git日志回顾以查找SVN跟踪信息,如果它找到合并,那么它不一定会向前推进您期望的分支。因此,即使您已从branches/foo合并到trunk并且您现在处于主干上,dcommit也可能会推回branches/foo

最好切换回常规SVN工具进行合并,只需使用git-svn进行开发。

答案 1 :(得分:0)

下一个其他屋顶选项可能是

检出您的中继分支#git checkout -b trunk git-svn-trunk

和cherry-pick开发人员提交到主干分支,

我更喜欢一个接一个地慢慢解决冲突

之后,您将拥有两个具有相同提交的分支 也许您要删除开发分支并从主干分支创建一个新的开发分支, 现在,这个分支(新的dev分支)对您的svn中继具有正确的git-svn引用...

保留推荐@simonp答案

我希望对您有帮助