1、安装GIt:
#yum install git
2、增加一个git用户
#useradd git
#passwd git
3、创建git仓库存储目录,设置权限
#mkdir /home/git/repositories 设置git仓库目录
#chown -R git:git /home/git
#chomd -R 755 /home/git/repositories 赋予可执行权限
4、初始化全局变量
#git config --global user.name "username" 设置全局name
#git config --global user.email "[email protected]" 设置全局email
5、Gitosis需要python支持
#yum install python-setuptools
6、安装Gitosis
#cd /home/git
#git clone https://github.com/res0nat0r/gitosis.git
#cd gitosis
python setup.py install 安装gitosis
7、生成客户端的公钥
打开Git-Bash
$ssh-keygen -t rsa 生成用户公钥和私钥
将公钥id_rsa.pub上传到CentOS服务器tmp目录 设置权限为git可读写
8、配置gitosis
#su - git
$gitosis-init < /tmp/id_rsa.pub
#su - root
#chomd -R 755 /home/git/repositories/gitosis-admin.git/hooks/post-update 设置权限
#chown -R git:git /home/git
9、管理gitosis配置
客户端下
$get clone git@serverIP:gitosis-admin.git clone下gisosis-admin项目来进行管理
$cd gitosis-admin
$vi gitosis.conf
例子如下:
[gitosis]
[group gitosis-admin]
writable = gitosis-admin
members = a@server1
[group developers]
writable = helloworld
members = a@server1 b@server2
如果要增加b用户,则需要将b的公钥拷贝到gitosis-admin/keydir/下,更改为相应的名字,如b@server2的公钥名字为[email protected]
$git add .
$git commit -am "add helloworld project and user b" 加入修改说明
$git remote add origin ssh://git@serverIP:helloworld.git
$git push origin master 提交给服务器
完成gitosis-admin配置
10、创建helloworld项目
客户端GIT-BASH
$mkdir helloworld
$git init --bare 初始化该项目
$git add . 添加整个项目
$git commit -am "init the project" 提交修改
$git remote add origin git@serverIP:helloworld.git 添加远程仓库
$git push origin master push到服务器
初始化helloworld项目完成,此时登陆服务器,可看到/home/git/repositories/helloworld.git项目
11、用户b可以操作helloworld项目了
$git clone git@serverIP:helloworld.git
$..... 用户操作
$git add .
$git commit -am ""
$git push 提交给服务器