服务器上使用Git进行访问控制(不是gitosis或gitolite)

5
我正在尝试仅为每个存储库设置访问控制(使用三种权限:无访问,只读和读写)。我有一个外部应用程序来控制它,这使得同步管理员git存储库(例如gitosis和gitolite提供的)不切实际。
完美的设置是允许我简单地调用系统命令来授予用户(ssh密钥)访问权限、创建存储库和删除存储库。例如: git-acl grant R user1.pub /path/to/repo.git - 授予用户1对存储库的只读访问权限 git-acl grant RE user2.pub /path/to/repo.git - 授予用户2对存储库的读写访问权限 git-acl create /path/to/repo2.git - 创建存储库
等等...
有人知道类似的工具吗?

这不是一个CLI工具,但最终你可能会使用http://gitlab.org/。 - David K
2个回答

3

0

首先,您可以轻松地编写脚本gitolite以添加用户到存储库中,方法是修改gitolite.conf文件并将其推回。

如果您想要另一个系统,我只知道gitlab-shell,但它似乎与gitlabhq密切相关。


1
谢谢,我其实就是担心这个问题。我对gitolite不满意的其中一点就是所有东西都存储在一个配置文件中,所以我要么需要进行搜索/替换,要么重新编译文件(对于更大的实现来说非常痛苦)。此外,我听说当该文件变得很大时,gitolite本身会变慢。 - jaq
@jaq 是的,但如果文件变得那么大,我会设置多个 gitolite ;) - VonC

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接