10

使用gitosis,是否可以指定写权限,让用户可以用自己的名字自由推送到分支,但不能与master合并?例如 $USER/test1 .. $USER/test5

这意味着您可以为每个项目仅托管一个存储库,而不是为同一项目托管多个存储库,特定于每个用户:

 project1-user1
 project1-user2
 project1-user3
 ...
 project5-user1
 project5-user2
 project5-user3
4

4 回答 4

20

Gitolite项目提供了这个功能这是在 Perl 中对 Gitosis 的重写。它的代码可以在github上找到

当我第一次写这个答案时,它不支持gitwebgit-daemon集成,但现在支持。

于 2009-09-14T01:16:53.380 回答
3

此脚本似乎按分支访问控制执行:

http://www.kernel.org/pub/software/scm/git/docs/howto/update-hook-example.txt

于 2009-07-24T08:48:48.190 回答
1

Gitosis 控制对存储库的访问,但不是通过分支或提交。因此,您可以将 master 本身放在具有只读访问权限的存储库中,并让用户将他们的各个分支推送到另一个存储库(或每个用户一个,如您所说)。我还没有看到任何人扩展 gitosis 以获得更细粒度的控制。

如果你真的需要限制你的用户访问并且你想使用 Git,那么也许你应该只通过电子邮件获取补丁并将你的 repo 保持为只读。

于 2009-02-24T04:36:03.977 回答
0

Gitolite 很好地支持分支或标签名称的权限。

在 Pro GIT 书中,本节详细解释了如何设置和配置每个分支的访问权限。在该页面中搜索“配置文件和访问控制规则”。

于 2011-09-23T08:17:18.163 回答