搭建Git Server - Centos+Gitosis

参考并部分转载自:http://www.pfeng.org/archives/757python

 

1. 安装依赖git

yum -y install curl-devel expat-devel gettext-devel openssl-devel zlib-devel perl-devel git python python-setuptools

2. 安装gitosisgithub

git clone git://github.com/res0nat0r/gitosis.git
cd gitosis
python setup.py install
#显示Finished processing dependencies for gitosis==0.2即表示成功

3. 开发机上生成公钥和对应的密钥bash

ssh-keygen -t rsa

  一直按回车服务器

4. 上传公钥到服务器并初始化gitosisssh

 将id_rsa.pub上传到服务器/tmp目录下,并在服务器上生成git用户,使用git用户并初始化gitosiscurl

adduser -m git
su - git
gitosis-init < /tmp/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/

 

5. clone gitosis-admin.git 管理版本库url

gitosis-admin.git版本库的做用是能够全局管理全部gitosis下面的子版本库,所以clone到本地并修改配置文件,再push到服务器上,就能够实现对其余版本库的管理,如用户、权限等。
在开发机的命令行中执行spa

git clone ssh://git@服务器IP:SSH端口/gitosis-admin.git

git clone git@服务器IP:项目名.git

  若是可以正常clone出来gitosis-admin版本库,基本的配置已经完成。命令行

6. 编辑新项目权限

编辑开发机上clone出来的gitosis.conf文件,在文件结尾加上:

[group test-git] # 组名称
writable = test-git # 项目名称
members = XXX@XXX #密钥用户名,参照gitosis-admin组的配置

  而后把修改提交到远程服务器,此时,已经能够对该仓库进行提交和读写。地址为

7. 创建新项目仓库并提交

git inti
touch readme
git add .
git commit -a -m "init test-git"
git remote add origin ssh://git@服务器IP:SSH端口/test-git.git
git push origin master
相关文章
相关标签/搜索