gitolite:允许任何repo RW CD的RW用户到他们的个人分支,不允许其他人

在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

但这似乎至少给所有项目的所有用户提供了读访问权限,即使他们没有其他读取权限.

什么是最好的解决方案?

最佳答案 一种解决方案是使用
wildcard repo or “wildrepo”在每个用户的单个仓库中管理这些分支:

详见“user gitolite doc”:

Note that “CREATOR” is a reserved word that gets expanded to your userid in some way, so the admin can literally add just the first two lines, and every authenticated user now has his own personal repo namespace, starting with pub/<username>/

这里提到的前两行是:

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

完成后,任何用户都可以:

>将另一个仓库添加为远程
>在新的孤儿分支中导入(获取)他选择的分支(参见“In git, is there a simple way of introducing an unrelated branch to a repository?”,
>在该分支中读/写.
>如果他/她被允许,请回到初始回购.

点赞