欢迎光临Software MyZone,有问题可留言或到站点论坛发帖,争取第一时间帮忙解决 || 站点论坛:火龙论坛 || 淘宝小店:应小心的易淘屋 【欢迎大家提建设性意见】

CentOS 6.6 Git服务器搭建

本文为firedragonpzy原创,转载务必在明显处注明:
转载自【Softeware MyZone】原文链接:
http://www.firedragonpzy.com.cn/index.php/archives/4510

欢迎热爱编程的朋友们参与到cocos2d-x编程中,为了给大家提供良好的交流环境,网站以开启QQ群
Software MyZone:66202765(群号,欢迎加入,若满,请加1群)
Software MyZone 1群(2dx):286504621
【加群请写:Software MyZone或者是firedragonpzy】
淘宝店:【应小心的易淘屋】初次开店,大家多多支持……
群论坛:火龙论坛正试运营阶段,欢迎大家多提些建设性意见……

我的digitalocean推广链接:https://www.digitalocean.com/?refcode=65dfdb158f1a,Everyone you refer gets $10 in credit,从此链接注册,你将获得10美元。

1. 环境部署

系统环境:服务器端:CentOS  release 6.6(Final) ,域名:firedragonpzy.com.cn

软件版本:服务器端:源码编译安装,git-1.9.0.tar.gz

 

2. 安装

2.1 服务器端:

#yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel perl-devel

#wget http://git-core.googlecode.com/files/git-1.9.0.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  #root用户运行

查看版本号:

git --version

git version 1.9.0

安装gitosis:gitosis为Git用户权限管理系统,通过管理服务端的/home/git/.ssh/authorized_key文件来执行对用户权限的管理,是一个python模块包

#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即表示成功

3. ssh设置

客户端生产密钥并上传到服务器端:

#ssh-keygen -t rsa

使用SSH Secure File Transfer Client上传的

4. 服务器上生成git用户,使用git用户并初始化gitosis

添加用户git:

#useradd -r -s /bin/sh -c 'git version control' -d /home/git git

设置权限:

#mkdir -p /home/git

#chown git:git /home/git

#passwd git //设置git用户的密码

在服务器端生成管理库:

#sudo -H -u git gitosis-init < ~/id_rsa.pub【id_rsa为客户端生成的名字,客户端生成pub的时候会设置两次密码,自己看着办】【~/id_rsa.pub为你上传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

客户端检出配置:

git clone git@firedragonpzy:/home/git/repositories/gitosis-admin.git

里面有:

./gitosis.conf

./keydir

./keydir/id_rsa.pub

注解:

1、gitosis.conf文件用来设置用户、仓库和权限的控制文件

2、keydir目录则是保存所有具有访问权限用户公钥的地方

3、./keydir/id_rsa.pub:如前所述,该用户具有访问权限

注意:【Git在win上有客户端,我用了TortoiseGit 1.8.9.0】

 

经过这四部,服务端就搭建成功了!接下来是托管项目。

1、建立项目库:到你的库目录下,也就是/home/git/repositories/,完后执行命令:


git init --bare testrepo.git

这样子,就ok了,用客户端TortoiseGit自己检出玩就好了

Tags: ,