gitolite:允许任何回购RW+;CD到其个人分支机构,不允许其他人
在gitolite中,我想将任何repo to RW+CD的所有允许写入的用户授予他们的个人分支。换句话说:任何允许RW项目的人都应该被允许创建分支,但只能在其个人名称空间中创建分支 我知道我基本上可以这样做:gitolite:允许任何回购RW+;CD到其个人分支机构,不允许其他人,git,gitolite,Git,Gitolite,在gitolite中,我想将任何repo to RW+CD的所有允许写入的用户授予他们的个人分支。换句话说:任何允许RW项目的人都应该被允许创建分支,但只能在其个人名称空间中创建分支 我知道我基本上可以这样做: repo some-repo RW+CD = admin RW = foo frob R = bar RW+CD dev/USER/ = foo frob #admin
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
但这意味着,我必须在每次回购交易中复制用户列表。虽然这对于少量回购协议来说是可以的,但一旦回购协议或用户数量增加,它肯定会变得难看
我想到了这样的事情:
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
但这似乎至少让所有项目上的所有用户都有读权限,即使他们没有读权限
最好的解决方案是什么?一种解决方案是在每个用户的单个回购中管理这些分支机构,使用: 如“”所述: 请注意,“
CREATOR
”是一个保留字,以某种方式扩展到您的userid
,因此管理员可以直接添加前两行,每个经过身份验证的用户现在都有自己的个人repo命名空间,从pub/
这里提到的前两行是:
repo pub/CREATOR/..*
RW+ = CREATOR
完成后,任何用户都可以:
- 将另一个回购协议添加为远程
- 在新的孤立分支中导入(获取)他选择的分支(请参见“”
- 读/写那个分支
- 如果他/她被允许,推回到初始回购