我的系统是:Linux server.git 2.6.32-504.el6.x86_64 #1 SMP Wed Oct 15 04:27:16 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
一、服务端:192.168.1.188
1、安装git环境:
#yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel perl-devel
2、安装Git服务器:(与客服端不一样)
#wget http://git-core.googlecode.com/files/git-1.9.0.tar.gz
给你们一个新的地址: wget https://www.kernel.org/pub/software/scm/git/git-2.1.2.tar.gz
#tar zxvf git-1.9.0.tar.gz
#cd git-1.9.0
#make prefix=/usr/local all
#make prefix=/usr/local install
#git --version
git version 1.9.0
注:编译不成功可能是gcc没有安装
3、安装gitosis:(管理用户)
#yum install python python-setuptools
#git clone git://github.com/res0nat0r/gitosis.git
#cd gitosis/
#python setup.py install
显示Finished processing dependencies for gitosis==0.2即表示成功
4、管理员客服端安装Git客服端
#yum install git
#git --version
git version 1.7.1
5、管理员客服端生成key
#ssh-keygen -t rsa
#scp ~/.ssh/id_rsa.pub root@192.168.1.188:~/
6、服务端初始化管理员
先创建一个git用户并创建密码
#useradd -r -s /bin/sh -c 'git version control' -d /home/git git
#passwd git
设置权限:
#mkdir -p /home/git
#chown git:git /home/git
在服务器端生成管理库:
#sudo -H -u git gitosis-init < ~/id_rsa.pub
或者
#su git
#gitosis-init < /root/id_rsa.pub
Initialized empty Git repository in /home/git//repositories/gitosis-admin.git/ Reinitialized existing Git repository in /home/git/repositories/gitosis-admin.git/
注解:
1. 生成的gitosis-admin为Git的用户访问权限管理库,gitosis通过这个git库来管理所有git库的访问权限。
2. 通过执行初始化,该公钥的拥有者就能修改用于配置gitosis的那个特殊Git仓库了
修改上传权限:
#chmod 755 /home/git/repositories/gitosis-admin.git/hooks/post-update
7、管理员客服端下载并管理项目和用户
#mkdir -p gitrepo/
#cd git-repo/
#git clone git@192.168.1.188:gitosis-admin.git
或者(上面不成功)
#git clone git@192.168.1.188:/home/git/repositories/regitosis-admin.git
#cd gitosis-admin
现在基本就可以了
其他添加项目和员工配置有时间再来写,也可以百度一下