搭建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
相關文章
相關標籤/搜索