Gitolite 如何检查当前用户是否具有给定存储库的写/读权限?这是由自定义外壳完成的吗?如果是,那么它是如何工作的?
问问题
924 次
1 回答
1
它使用ssh强制命令机制来调用 gitolite-shell 脚本。
Gitolite 通过在 ~git/ssh/authorized_keys 中添加类似于以下内容的行来注册用户:
command="/devit_home/users/vobadm/gitpoc/ce7/gitolite/bin/gitolite-shell gitoliteadm",no-port-forwarding,no-X11-for warding,no-agent-forwarding,no-pty ssh-rsa AAAAB3N
用户 ID 直接从公钥的名称派生而来。
有关更多信息,请参阅“像 gitolite 这样的程序如何工作? ”。
读/写访问是在文件中声明的gitolite.conf
。
gitolite 的大部分功能都在
conf/gitolite.conf
文件中,该文件指定了 repos 的详细访问控制。
除了添加用户之外的一切都发生在这个文件中。
@staff = dilbert alice # line 1
@projects = foo bar # line 2
repo @projects baz # line 3
RW+ = @staff # line 4
- master = ashok # line 5
RW = ashok # line 6
R = wally # line 7
于 2013-04-10T09:01:43.807 回答