1、CentOS6.4自带OPENSSH服务,可通过设置/etc/hosts.allow和/etc/hosts.deny设置要访问的IP, 重启服务/etc/init.d/httpd restart
2、安装GIt:
#yum install git
3、增加一个git用户
#useradd -m git
#passwd git
4、创建git仓库存储目录,设置权限
$mkdir /home/git/repositories 设置git仓库目录
$chown git:git /home/git/repositories
$chomd -R 755 /home/git/repositories 赋予可执行权限
5、初始化全局变量
#git config --global user.name "username" 设置全局name
#git config --global user.email "username@email.com" 设置全局email
6、Gitosis需要python支持
#yum install python-setuptools
7、安装Gitosis
#git clone https://github.com/res0nat0r/gitosis.git
#cd gitosis
python setup.py install 安装gitosis
8、生成客户端的公钥
客户端选择,系统:Windows 8 软件msysgit
安装及配置过程这里不写,生成个人公钥和私钥
打开Git-Bash
$ssh-keygen -t rsa 生成用户公钥和私钥
文件保存在c:/users/user/.ssh目录下
将公钥id_rsa.pub上传到CentOS服务器
9、配置gitosis
$gitosis-init < id_rsa.pub
chomd -R 755 /home/git/repositories/gitosis-admin.git/hooks/post-update 设置权限
10、管理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的公钥名字为b@server2.pub
$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配置
11、创建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项目
12、用户b可以操作helloworld项目了
$git clone git@serverIP:helloworld.git
$..... 用户操作
$git add .
$git commit -am ""
$git push 提交给服务器