svn - 不同用户组不同权限的SVN钩子
问题描述
我是这个话题的新手,我很难为我的问题进入编程钩子。我需要一个可以区分三个不同用户组的钩子:
A组:可以做任何事情(删除标签和主干,不加评论地提交) B组:可以提交标签和删除标签/分支;不能删除中继,不能在没有注释的情况下提交 C 组:可以提交标签;不能更改或删除任何内容
有没有办法做到这一点?
非常感谢您的帮助!
来自德国的问候菲利普
解决方案
有可能做到这一点。我不能给你写任何代码,但你必须实现一个预提交挂钩,并在其中调用svnlook来获取有关当前提交的信息。
主要信息是提交的作者,为此您调用svnlook 作者(请参阅未接受的答案)。
另一个重要信息是用户正在改变什么。为此,您调用svnlook change并解析结果。
要查看您使用svnlook log的评论。
对 svnlook 的所有三个调用都需要 repo 的路径(svn 服务器上的本地路径)和事务 ID。您将这两个都作为预提交挂钩脚本的命令行参数
将用户分组在脚本中完成。你可以硬编码那里的所有用户,或者有一个单独的配置文件,作为一个小型数据库,脚本可以读取。每个用户一行,在一行中会有数据表明该用户可以做什么和不能做什么。
推荐阅读
- windows - 如何找出程序何时启动然后通过cmd批处理文件关闭,然后在程序关闭时创建一个rem
- python - 是否可以在不写入文件的情况下跟踪 Python 脚本运行了多少次?
- wpf - 如何获取 DataGridTextColumn 发件人的数据网格父级
- mobx - 处理 mobx 中的输入变化
- php - 刷新div后Popover停止工作?
- python - 使用 python 或 bash 在多行文件中查找和替换模式
- php - 使用 ajax 在循环中填充表单字段
- javascript - 字符串文字第一个还是第二个串联?
- c# - Unity 中的浮动文本
- ruby-on-rails - 使用简单的 for 选择并保存多个复选框