在gitolite中,我想将所有写允许的任何repo用户授予RW + CD到他们的个人分支。换句话说:应该允许任何被允许RW项目的人创建分支,但只能在他们的个人命名空间中。
我明白我基本上可以这样做:
repo some-repo
RW+CD = admin
RW = foo frob
R = bar
RW+CD dev/USER/ = foo frob #admin
但这意味着我必须基本上复制每个仓库的用户列表。虽然这对于少量的回购是可以的,但一旦回购或用户数量增加,它肯定会变得丑陋。
我想到了这样的事情:
repo @all
RW+CD dev/USER/ = @all
但是,这似乎至少可以对所有项目上的所有用户提供读取权限,即使他们在那里没有读取权限。
最佳解决方案是什么?
答案 0 :(得分:2)
一种解决方案是使用wildcard repo or "wildrepo":
在每个用户的单个仓库中管理这些分支详见“user gitolite doc”:
请注意,“
开头CREATOR
”是一个保留字,以某种方式扩展到userid
,因此管理员可以直接添加前两行,每个经过身份验证的用户现在都有自己的个人repo命名空间,以pub/<username>/
这里提到的前两行是:
repo pub/CREATOR/..*
RW+ = CREATOR
完成后,任何用户都可以: