gitolite简介
1 | gitolite是一款perl语言开发的git服务管理工具,通过公钥对用户进行认证,并能够通过配置文件对写操作进行基于分之和路径的精细授权 |
Git使用SSH协议:
1 | SSH协议用于为Git提供远程读写操作,是远程写操作的标准服务,在智能HTTP协议出现之前,甚至是写操作的唯一标准服务. |
1 | 1.指定创建公钥/私钥: |
gitolite安装
1.创建用户(Server)
1 | [root@localhost ~]# useradd git |
2.下载gitolite
1 | [root@localhost ~]# su - git |
3.创建密钥对(Client)
1 | [root@localhost ~]# ssh-keygen |
1 | [root@localhost ~]# su - git |
4.克隆git管理
1 | [root@localhost ~]# git clone git@192.168.10.75:gitolite-admin |
5.客户提供ssh public key
1 | $ ssh-keygen -t rsa -f ~/.ssh/liupeng |
6.让客户将生成的liupeng.pub放到gitolite-admin/keydir目录下
1 | [root@localhost keydir]# pwd |
7.设置用户权限
1 | [root@localhost conf]# pwd |
8.将配置上传
1 | [root@localhost gitolite-admin]# pwd |
9.客户端设置别名
1 | $vim ~/.ssh/config |
10.客户端克隆
1 | $git clone git@devops:devops.git |
添加新用户(在gitserver上):
1.生成ssh-key
1 | [root@localhost ~]# ssh-keygen -t rsa -C "test" -f ~/.ssh/test |
2.修改gitolite配置文件
1 | [root@localhost ~]# vim gitolite-admin/conf/gitolite.conf |
3.客户端将私钥(test)保存到本地,同时修改”.ssh/config”配置文件
1 | $ ls -l ~/.ssh/genghongyu |
4.客户端克隆
1 | $git clone git@test:test.git |
apt-get install gitolite3
1 | opsys@ubuntu:~$ sudo apt-get -y install openssh-server openssh-client |
1 | opsys@ubuntu:~$ ssh-keygen |
1 | opsys@ubuntu:~$ sudo su - |
1 | opsys@ubuntu:~$ git clone git@gitserver:gitolite-admin.git |
1 | opsys@ubuntu:~$ cd gitolite-admin/ |
1 | 客户端直接下载文件: |