我正在研究SVN存储库钩子。 以下是存储库的典型结构:
trunk/
branches/
branch1/
branch2/
在预提交挂钩中,我需要检测是否已执行合并(在分支之间,从分支到主干,反之亦然)并检查用户是否有权执行合并。
我发现合并更改了目标目录的'svn:mergeinfo'属性。所以,我必须解析commit changeset,检测dir的属性更改并检查自上次提交以来'svn:mergeinfo'属性是否已更改。
这一切看起来都太复杂了。是否有更方便的方法来检测合并?
答案 0 :(得分:2)
在我看来,检测svn:mergeinfo属性的变化是区分它的唯一方法。当然,您还必须确保您的提交不是来自未创建mergeinfo的v1.5之前的客户端。