在Linux下使用gitosis配置安裝Git服務器

Step 1,準備


首先,確認你的計算機中裝有Git,python,openssh-server,python-setuptools等軟件。

如果是在ubuntu,命令如下:

 sudo apt-get install git openssh-server python2.6 python2.6-setuptools

Step 2, 生成Key,添加Server


Key的生成

使用命令sshkeygen,按照他的提示,一步一步生成,即可。(一直安回車的話,會生成一個空密碼的key,這個一般情況下會滿足大部分需求)

​完畢後會在 ~/.ssh/目錄下生成id_rsa.pub文件。這個是key'的公鑰

安裝gitosis

git clone git://eagain.net/gitosis.git
cd gitosis
python setup.py install

添加Server

創建新的用戶,git

sudo useradd

講前兩部生成的id_rsa.pub複製到git的home目錄下,(scp,cp按照情況來)

輸入命令

gitosis-init < id_rsa.pub
chmod 755 /home/git
chmod 700 /home/git/.ssh
chmod 644 /home/git/.ssh/authorized_keys

這樣,就會創建一個默認的gitosis-admin.git版本庫

 

Step 3,管理git服務器


使用客戶端的機器,也就是剛纔生成key的機器

git clone git@127.0.0.1:gitosis-admin

就會創建出一個版本庫,叫做gitosis-admin

其中有個gitosis.conf 文件,和keydir目錄

conf文件是配置文件,可以配置用戶的權限,keydir目錄是用戶的公鑰存放的目錄,以 用戶名.pub 的形式存下來

添加一個新用戶:

講新用戶的pub key放入keydir中,命名爲XXX.pub,在conf中進行配置

講其添加到之前的一個項目組中,或新建個組

[group gitosis-admin]
writable = gitosis-admin
members = reyoung@Reyoung
例如如上描述的就是,gitosis-admin組,對gitsis-admin版本庫可寫,成員有reyoung@Reyoung
修改完所有配置文件,commit&push即可

添加一個新項目

1、在writeable中添加項目名稱

 

2、在本地初始化項目,示例如下

cd ..
mkdir myNewProject
cd myNewProject
git init
git remote add origin git@someServer.com:myNewProject.git
3、將本地初始化的項目,提交到Server
 

git add .
git commit -a -m "This is my initial commit for myNewProject"
git push origin master:refs/heads/master

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章