首页 > 解决方案 > 不同用户组不同权限的SVN钩子

问题描述

我是这个话题的新手,我很难为我的问题进入编程钩子。我需要一个可以区分三个不同用户组的钩子:

A组:可以做任何事情(删除标签和主干,不加评论地提交) B组:可以提交标签和删除标签/分支;不能删除中继,不能在没有注释的情况下提交 C 组:可以提交标签;不能更改或删除任何内容

有没有办法做到这一点?

非常感谢您的帮助!

来自德国的问候菲利普

标签: svnhooktortoisesvn

解决方案


有可能做到这一点。我不能给你写任何代码,但你必须实现一个预提交挂钩,并在其中调用svnlook来获取有关当前提交的信息。

主要信息是提交的作者,为此您调用svnlook 作者(请参阅未接受的答案)。

另一个重要信息是用户正在改变什么。为此,您调用svnlook change并解析结果。

要查看您使用svnlook log的评论。

对 svnlook 的所有三个调用都需要 repo 的路径(svn 服务器上的本地路径)和事务 ID。您将这两个都作为预提交挂钩脚本的命令行参数

将用户分组在脚本中完成。你可以硬编码那里的所有用户,或者有一个单独的配置文件,作为一个小型数据库,脚本可以读取。每个用户一行,在一行中会有数据表明该用户可以做什么和不能做什么。


推荐阅读