欢迎来到CentOS问吧,从这里您能进入CentOS世界!

CentOS问吧

在centos5.6下搭建Git服务器-gitolite

时间:2011-07-08 15:10来源:未知 作者:admin 点击:
说到Git,作为Linus的另一大著名作品,目前已经成熟,与CVS和SVN相比优势明显,一回特别喜欢其分布式及灵活的分支合并功能,另外源码下载和上传的速度体验也相当凑合。本文将分享

说到Git,作为Linus的另一大著名作品,目前已经成熟,与CVS和SVN相比优势明显,一回特别喜欢其分布式及灵活的分支合并功能,另外源码下载和上传的速度体验也相当凑合。本文将分享下如何在centos5.6(CSSer.com的VPS采用的发行版)配置Git服务器。
目标

配置Git服务器有很多种方式,一回的目标是配置能满足多人协作、可以细分权限的Git服务器,另外还要有较好的安全性,在迎合这种目标的各种组合中,最终选择了gitolite。
基础知识

你需要具有简单的linux基础知识,如ssh、用户及用户组、权限、密钥、git操作等。整个过程相当简单,按照下面的步骤操作,如无意外,就能成功!
安装git

服务器及客户端都要安装,去下载编译git最新版,或者通过:

yum install git

安装较老的稳定版本。
在服务器添加git用户和git用户组

mkdir -p /data/git
groupadd git
useradd -g git -d /data/git -s /bin/bash git
passwd git #设置git用户密码

#改变git目录权限
chown -R git:git /data/git
chmod -R 2755 /data/git

在客户端生成密钥

ssh-keygen -t rsa -f ~/.ssh/admin
scp ~/.ssh/admin.pub server:/tmp/admin.pub #将公钥保存到服务器留待后用,server为服务器的IP地址

安装gitolite

到服务器,进行gitolite安装:

su git
cd $HOME
git clone git://github.com/sitaramc/gitolite
cd gitolite
mkdir -p $HOME/bin $HOME/share/gitolite/conf $HOME/share/gitolite/hooks
src/gl-system-install $HOME/bin $HOME/share/gitolite/conf $HOME/share/gitolite/hooks

将$HOME/bin下的可执行程序加入系统PATH:

echo "PATH=$PATH:$HOME/bin" >> ~/.bashrc

暂时退出git用户,然后重切换进来,这时环境变量已经生效:

exit
su git
gl-setup /tmp/admin.pub #设置admin.pub公钥,默认第一个公钥对应管理员

OK,到此,环境搭建一步基本大功告成了。
gitolite配置管理

转到客户端,一回这里用的是Ubuntu:

cd; git clone git@server:gitolite-admin

研究下gitolite-admin目录下的相关文件,可以对git仓库及用户权限进行精细管理。
如何在客户机使用TortoiseGit?

一回是将Ubuntu生成的私钥经puttygen转换为ppk格式之后连接服务器成功,顺便推荐好用的软件WinSCP,可以很方便的在Windows与Linux间互拷文件,相当好用。

切记:私钥与公钥要保存好!
结语

本文步骤是根据回忆而来,未经测试,一回历经三次配置,首先是在自己虚拟机中(centos5.5),其次在公司内部服务器(centos5.5),最后在CSSer.com的VPS(centos5.6)均配置成功。

(责任编辑:admin)
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
验证码: 点击我更换图片
栏目列表
推荐内容