31.2 管理Gitosis
31.2.1 管理员克隆gitolit-admin管理库
当Gitosis安装完成后,在服务器端自动创建了一个用于Gitosis自身管理的Git库:gitosis-admin.git。
管理员在客户端克隆gitosis-admin.git库,注意要确保认证中使用的是正确的公钥:
$git clone git@server:gitosis-admin.git
$cd gitosis-admin/
$ls-F
gitosis.conf keydir/
$ls keydir/
jiangxin.pub
可以看出gitosis-admin目录下有一个配置文件和一个目录keydir。
keydir/jiangxin.pub文件
keydir目录下初始时只有一个用户公钥,即管理员的公钥。管理员的用户名来自公钥文件末尾的用户名。
gitosis.conf文件
该文件为授权文件。初始内容为:
1 [gitosis]
2
3 [group gitosis-admin]
4 writable=gitosis-admin
5 members=jiangxin
可以看到授权文件的语法完全不同于之前介绍的Gitolite的授权文件。整个授权文件以用户组为核心,而非版本库为核心。
〇第3行开始定义了一个用户组gitosis-admin。
〇第5行设定了该用户组包含的用户列表。
初始时只有一个用户,即管理员公钥所属的用户。
〇第4行设定了该用户组对哪些版本库具有写操作。
在这里,配置对gitosis-admin版本库具有写操作。写操作自动包含了读操作。