我为此绞尽脑汁,却一无所获。我希望这里有人能提供一些线索,或者只是证实我的印象,即这是不可能的。
我在内部存储库上使用 gitolite 2.3 来应用高级 ACL。有人要求我修改配置,以便特殊组中的用户能够@projectX
:
- 在名称以 开头的任何分支上推送任何更改(包括非快进)
projectX-
; - 对于其他分支,只有当文件位于顶层目录中时,它们才能够推送
/projectX
,否则它们必须只能拉取/克隆。
现在,授予他们“他们的”分支的完全权限以及克隆/拉取任何其他分支的权限很简单,只需遵循类似的规则RW+ projectX-.* = @projectX
即可。
同样,授予他们某个路径的完全权限以及拉取/克隆权限也很容易(仅需几条规则)。
我找不到应用“两者”的方法,以便用户在其分支上保留完全权限,并在“他们的”路径之外的任何其他分支上保留只读权限。
我开始感受到不可能的气息......有什么线索吗?
提前致谢
-- bronto
答案1
我相信这可以实现:
- “conf”文件(conf/gitolite.conf)