2011-11-25 123 views
4

在gitolite中,我想授予所有编写允许任何回购RW + CD的用户到其个人分支。换句话说:允许RW项目的人应该被允许创建分支,但只能在其个人名称空间中创建分支。gitolite:允许任何回购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 

但是,这似乎给至少读取访问所有用户在所有项目,即使他们不会有阅读,否则权利。

这是最好的解决方案是什么?

回答

2

一个解决办法是,以管理每个用户个人的回购协议中的那些分支,使用wildcard repo or "wildrepo"

正如在“user gitolite doc‘详细介绍:

注意,’CREATOR”是一种保留字,被扩大以某种方式到您的userid,所以管理员可以从字面上仅添加前两行,并且每个经过身份验证的用户现在都拥有自己的个人回购名称空间,从pub/<username>/

这里提到的前两行是:

repo pub/CREATOR/..* 
    RW+  = CREATOR 

一旦做到这一点,任何用户都可以:

相关问题