我的团队使用SVN进行源代码管理。最近,我一直在从树干偶尔合并,这是一个相当恼人的经历(比较Joel Spolsky的"Subversion Story #1"),所以我一直在寻找替代方法来管理分支和合并。鉴于中央SVN存储库是不可协商的,我想要的是一组满足以下条件的工具。在SVN中维护分支机构的工具
完整的修订历史应该存储在SVN中,用于中继线和分支。
在任一方向(可能纵横交错)合并应该是相对无痛的。
合并历史应尽可能存储在SVN中。
我已经看了两个git-svn
和bzr-svn
既不似乎是胜任工作—基本上,考虑到修订历史记录,他们可以从SVN仓库的出口,他们似乎无法做任何好作业处理合并比SVN可以。例如,在使用git
克隆版本库之后,我的分支的修订历史记录显示原始分支脱离中继线,但git
没有“看到”任何临时SVN合并为“原生”合并—修订历史记录为一长线。因此,任何试图从git
中汇总干线的尝试都会产生与SVN合并一样多的冲突。 (此外,git-svn
documentation明确警告不要使用git
到部门之间的合并。)
是否有办法来调整我的工作流程,让git
满足上述要求?也许我只需要提示或技巧(或单独的合并工具?)来帮助SVN更好地融入分支机构?
听起来像你真的需要说服你的团队使用git。 :P – Amber 2010-03-29 05:22:11
我认为,不幸的是,你面对SVN仅仅限于合并分支的能力这一事实 - 只要你的中央回购是一个SVN回购,那么任何数量的git魔法都很难拯救你。我当然很好奇,看看有没有好的工作杂志! – Cascabel 2010-03-29 05:23:00