1.顯示服務器版本
cat /etc/redhat-release
#CentOS release 6.4 (Final)
ipconfig
#服務器IP192.168.1.225 域名www.domain.com SSH端口8200(默認為22)
2.安裝git
yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel perl-devel
#下載git-1.8.2.2.tar.gz 到 /usr/local/src 下載網址http://code.google.com/p/git-core
#https://www.kernel.org/pub/software/scm/git/git-2.2.0.tar.gz
cd /usr/local/src
tar -zvxf git-1.8.2.2.tar.gz
cd git-1.8.2.2
make prefix=/usr/local/git all
make prefix=/usr/local/git install
#增加軟連接
ln -s /usr/local/git/bin/* /usr/bin/
git --version
#如何能顯示版本號,即表示成功
3.安裝gitosis
yum install python python-setuptools
cd /usr/local/src
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/gitosis-admin.git
#否則需要需要加上端口進行訪問
#git clone ssh://git@www.domain.com:8200/gitosis-admin.git
*******************************************************
5.在開發機客戶端上,生成密鑰並上傳到服務器上
ssh-keygen -t rsa
#一路回車,不需要設置密碼
#從開發機客戶端,上傳剛生成的公鑰到服務器(如果修改端口,按4進行配置指定端口)
scp ~/.ssh/id_rsa.pub root@www.domain.com:/tmp/
ls /tmp/id_rsa.pub
#顯示已經上傳的密鑰
6.服務器上生成git用戶,使用git用戶並初始化gitosis
#增加git用戶
adduser -m git
#切換用戶
su - git
#服務器的公鑰(剛才開發機客戶端上傳),導入后此開發機客戶端即可以管理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/
#刪除密鑰
su - root
rm -rf /tmp/id_rsa.pub
6.在開發機客戶端,復制git管理項目(git服務器管理,也是一個git倉庫)
mkdir -p /repo
cd /repo
git clone git@www.domain.com:gitosis-admin.git
7.在開發機客戶端,增加及設置管理項目
cd /repo/gitosis-admin
#查看已經上傳密鑰
ls keydir
cat keydir/vicowong\@VICO.pub #vicowong@VICO.pub為已經上傳的開發機生成的公密
#顯示密鑰最后的符串為密鑰用戶名 這里為vicowong@VICO
vim gitosis.conf
#在文件尾增加以下內容
[group test-git] # 組名稱
writable = test-git # 項目名稱
members = vicowong@VICO #密鑰用戶名
#提交修改
git add .
git commit -a -m "add test-git repo"
git push
9.在開發機客戶端,初始,增加及使用項目test-git
cd /repo
mkdir test-git
cd test-git
git inti
touch readme
git add .
git commit -a -m "init test-git"
git remote add origin git@www.domain.com:test-git.git
git push origin master
