作者:张。、 | 来源:互联网 | 2017-07-04 05:29
查看Linux系统服务器系统版本#cat/etc/redhat-release#查看系统版本CentOSrelease6.5(Final)在服务器上安装git#sudoyuminstallcurl-develexpat-develgettext
-
查看Linux系统服务器系统版本
# cat /etc/redhat-release # 查看系统版本
CentOS release 6.5 (Final)
-
在服务器上安装git
-
#sudo yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel perl-devel
-
#cd ~
-
#wget https://git-core.googlecode.com/files/git-1.9.0.tar.gz
下载git-1.9.0.tar.gz安装包下载地址
其他版本下载地址
-
#tar -zxvf git-1.9.0.tar.gz
解压
-
#cd git-1.9.0
-
#make prefix=/usr/local/git all
-
#make prefix=/usr/local/git install
增加软连接
-
#ln -s /usr/local/git/bin/* /usr/bin/
-
#git --version
如何能显示版本号,即表示成功
-
安装gitosis
Note: 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即表示成功
4 . 修改客户端git连接端口(如果GIT服务器为默认SSH端口为22,则不需要以下步骤)
修改开发机客户端配置文件(可以省略每次输入端口)
# vim ~/.ssh/config
打开后,编辑文件,添加以下代码
host www.domain.com
hostname www.domain.com
port 8200
**此处稍后使用**
# 修改后,开发机客户端即可用以下方式进行连接访问
#git clone ssh://git@www.domain.com/home/git/repositories/gitosis-admin.git
# 否则需要需要加上端口进行访问
#git clone ssh://git@www.domain.com:8200/home/git/repositories/gitosis-admin.git
5 . 在开发机客户端上,生成密钥并上传到服务器上 # sh-keygen -t rsa
一路回车,不需要设置密码
从开发机客户端,上传刚生成的公钥到服务器(如果修改端口,按4进行配置指定端口) # scp -P 8200 ~/.ssh/id_rsa.pub root@www.domain.com:/tmp
显示已经上传的密钥 # ls /tmp/id_rsa.pub
6 . 服务器上生成git用户,使用git用户并初始化gitosis
增加git用户 #adduser -m git
更改git用户的密码 #sudo passwd git
su 到git用户 #su - git
在服务器端生成管理库(刚才开发机客户端上传) #gitosis-init
显示以下信息即表示成功 #Initialized empty Git repository in /home/git/repositories/gitosis-admin.git/
#Reinitialized existing Git repository in /home/git/repositories/gitosis-admin.git/
删除密钥 #su - root
#rm -rf /tmp/id_rsa.pub
7 . 在开发机客户端,复制git管理项目(git服务器管理,也是一个git仓库)
#mkdir -p /gitpo
#cd /gitpo
#git clone ssh://git@www.domain.com/home/git/repositories/gitosis-admin.git
8 . 在个人开发机增加及设置管理项目
cd /gitpo/gitosis-admin
ls keydir
cat keydir/xx@xx.pub
vim gitosis.conf
[group test-git]
writable = test-git
members = xx@xx x2x2@x2x2
git add .
git commit -a -m "add test-git repo"
git push
9 . 在个人开发机上初始,增加及使用项目test-git
#cd ~/gitpo
#mkdir test-git
#cd test-git
#git init
#touch readme
#git add .
#git commit -a -m "init test-git"
#git remote add origin git@zgit:test-git.git
#git push origin master