CentOS 6.4x64安装git和gitolite服务器
一.部署环境系统:CentOS 6.4x64 最小化安装
IP:192.168.3.27
二.安装基础依赖包
1
#yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel perl-devel -y
三.下载git-2.2.0.tar.gz
1
#wget https://www.kernel.org/pub/software/scm/git/git-2.2.0.tar.gz
四.解压文件到当前目录下,并安装
1
2
3
4
#tar xf git-2.2.0.tar.gz
#cdgit-2.2.0/
#make prefix=/usr/local/git all
#make prefix=/usr/local/git install
增加软连接
1
#ln -s /usr/local/git/bin/* /usr/bin/
验证结果,显示出版本号,表示安装成功
1
2
#git --version
git version 2.2.0
五.创建git用户
1
# adduser git
六.在git用户家目录下安装gitolite
1
2
3
# su git
$ cd
$ mkdir bin
七.克隆gitolite源码
1
2
3
4
5
6
7
8
9
$ git clone https://github.com/sitaramc/gitolite.git
Cloning into 'gitolite'...
remote: Counting objects: 8884, done.
remote: Total 8884 (delta 0), reused 0 (delta 0), pack-reused 8884
Receiving objects: 100% (8884/8884), 3.66 MiB | 179.00 KiB/s, done.
Resolving deltas: 100% (5055/5055), done.
Checking connectivity... done.
$ ls
bingitolite
八.安装gitolite
1
2
3
$ ./gitolite/install --to /home/git/bin/
$ ls bin/
commandsgitolitegitolite-shelllibsyntactic-sugartriggersVERSIONVREF
九.配置gitolite管理员
生成管理员账户的公钥(此处指定本地root用户为管理员,键入回车使用默认值)
1
2
# ssh-keygen
# cp .ssh/id_rsa.pub /tmp/admin.pub
切换回git用户,为gitolite配置管理员
1
2
3
4
5
6
7
8
9
$ bin/gitolite setup -pk /tmp/admin.pub
Initialized empty Git repository in /home/git/repositories/gitolite-admin.git/
Initialized empty Git repository in /home/git/repositories/testing.git/
WARNING: /home/git/.ssh missing; creating a new one
(this is normal on a brand new install)
WARNING: /home/git/.ssh/authorized_keys missing; creating a new one
(this is normal on a brand new install)
$ ls
bingitoliteprojects.listrepositories
十.管理员日常管理
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
# git clone git@192.168.3.27:gitolite-admin
Cloning into 'gitolite-admin'...
The authenticity of host '192.168.3.27 (192.168.3.27)' can't be established.
RSA key fingerprint is c4:34:02:55:ad:42:8a:65:ba:94:00:20:48:d7:3c:33.
Are you sure you want to continue connecting (yes/no)? yes
#这里是第一次连接,需要输入yes进行确认
Warning: Permanently added '192.168.3.27' (RSA) to the list of known hosts.
remote: Counting objects: 6, done.
remote: Compressing objects: 100% (4/4), done.
Receiving objects: 100% (6/6), 734 bytes | 0 bytes/s, done.
remote: Total 6 (delta 0), reused 0 (delta 0)
Checking connectivity... done.
# ls
confkeydir
# pwd
/root/gitolite-admin
验证:
创建库、添加用户
例如某test用户访问git服务器上的mytest库test用户向git服务器管理(此处是之前的服务器本地的root用户)提交自己的ssh无密码公钥管理员将test的公钥复制到 gitolite-admin/keydir/ 下
页:
[1]