SVN批准合并

时间:2014-03-26 10:58:48

标签: svn merge branch

我们有一个非常标准的开发过程:在一个新的功能请求/错误修正上,我们的开发人员创建了一个自己的SVN分支,在那里开发代码,我们进行了几次代码审查迭代,代码审查更改再次提交,当所有开发人员都认为确定时,我们喜欢将它合并回SVN主干的代码。

现在来自上述级别的请求进入系统:我们应该只有在被更高的m @ n @ g€m nt批准时才合并回主干。它们实际上要求我们阻止" svn merge"直到有人按某个按钮,在某个地方设置了一个标志......

这甚至可能吗?如果有,怎么样?

1 个答案:

答案 0 :(得分:1)

如果您的提交进入主干合并集,则可以使用预提交挂钩,

  • 拦截提交到/ trunk
  • 检查此提交中定义的某些文件或(甚至是/ trunk)的某些属性(原始属性必须在branch-root中定义并显示为属性在WC中合并主干
  • 仅在已定义属性并且具有预定义值
  • 时才允许此提交

如果您的提交是混合的(在主干和合并中直接开发),您可以稍微扩展上面的钩子并检查两个svn-properies,其中必须定义一个(并且只有一个)。

类似&#34;直接提交是&#34;和&#34;合并批准的是&#34;。对于开发提交,merge-approved必须不存在,而direct-commit将被定义,对于合并集情况相反(direct-commit不存在,merge-approved已定义)< / p>

我看到管理和管理方面只有一个问题:在创建分支时,必须在分支中擦除所有这些属性,&#34;签署&#34;用于批准合并的分支必须安全的方式发生(普通的propset将很快被利用)