在gitolite中,为@all的用户创建例外的任何更简单的方法是什么?

时间:2013-04-27 08:25:25

标签: gitolite

例如,在回购PRJ中,有几个组,例如@A1 @A2 @B1 @B2UserX在组@B1中。

现在我想为UserX添加一条规则,只允许他修改src/文件夹中的代码,但不要将此规则应用于其他人。
有没有更简单的方法来实现它?

@B1 = UserX UserY UserZ
repo    PRJ
    R               =   @A1 @A2
    RW+             = @B1 @B2
    RW   NAME/      = @A1 @A2 @B2 UserY UserZ
    #RW  NAME/      =   @all-UserX # like this?
    RW   NAME/src/  =   UserX
    -    NAME/      =   UserX

1 个答案:

答案 0 :(得分:0)

Gitolite遵循rule of accumulation

的系统
  

对于每个用户+回购组合,将适用几个规则   在应用访问权限检查之前,Gitolite将它们全部合并到一个列表中(按照在conf文件中找到的顺序)。

     

对于选项和配置行,稍后的设置将覆盖之前的设置

有一种方法可以使用deny-rules directive更轻松地管理拒绝规则,但它不适用于您的情况。

这更接近你在delegation mechanism中看到的规则,并且会被修改为(未经测试)

repo Prj
    R                   = @A1 @A2
    RW+                 = @B1 @B2
    RW  VREF/NAME/src   = UserX
    -   VREF/NAME/src   = @all