LinuxMint13搭建gitolite服務器

1.首先須要閱讀 LinuxMint13安裝無密碼訪問git ,在該博文中講到客戶端的id_rsa.pub在執行git

ssh-copy-id -i ~/.ssh/id_rsa.pub  git@localhostgithub

之後,id_rsa.pub的內容就被拷貝到了服務器端的/home/git/.ssh/authorized_keys文件中。shell

在本篇博文開始的時候,須要另外選一臺PC機,做爲Git管理和受權者的操做機,和服務器機器已經開發者機器不一樣,須要在受權機生成一對單獨公私鑰對,執行如下命令:服務器

ssh-keygen -f  ~/.ssh/gitolite_skwikissh

生成兩個文件分別是:~/.ssh/gitolite_skwiki和~/.ssh/gitolite_skwiki.pubide

將gitolite_skwiki.pub拷貝到服務器的/tmp/目錄,修改權限爲777,命令爲:.net

scp ~/.ssh/gitolite_skwiki.pub git@服務器公網IP:/tmp/gitolite_skwiki.pub開發

此處由於咱們事先作了git帳號的免密碼登陸,因此不會遇到權限問題。get

2.在受權機建立SSH主機別名:源碼

編輯~/.ssh/config文件,沒有該文件的話能夠自動建立並編輯,輸入如下內容:

host GitoliteServer

       user git

       hostname 主機公網IP

       port 22

       identityfile ~/.ssh/gitolite_skwiki

3.在服務器端,使用如下命令下載gitolite的源碼:

git clone git://github.com/ossxp-com/gitolite.git

4.在服務器端,建立相關目錄:

sudo mkdir -p /usr/local/share/gitolite/conf

sudo mkdir -p /usr/local/share/gitolite/hooks

5.在服務器端,進入剛clone下來的gitolite/src目錄,進行安裝:

cd gitolite/src

sudo ./gl-system-install /usr/local/bin  /usr/local/share/gitolite/conf   /usr/local/share/gitolite/hooks

6.在服務器端,安裝平臺的gitolite包:

sudo aptitude install gitolite

最近試了一下這個命令不能用了,後來又試了

sudo apt-get install gitolite

結果仍是不行,提示:

Package 'gitolite' has no installation candidate

後來執行:

sudo apt-get update

仍是不行,繼續使用命令:

sudo apt-get upgrade

仍是不行,看來apt-get 裝不了gitolite,

後來我使用:

sudo apt-get install aptitude

sudo aptitude update

sudo aptitude upgrade

安裝上述步驟安裝了aptitude,繼續執行sudo aptitude install gitolite

仍是不行。。。。

 

7.在服務器端,這一步特別要當心,首先保證前面的步驟1已經執行了,而後執行如下命令:

cd ~

gl-setup /tmp/gitolite_skwiki.pub

執行之後有一個特別要注意的地方,程序提示編輯.gitolite.rc文件,不少書籍上說保持默認,

實際上須要對.gitolite.rc作必定修改:

$GL_WILDREPOS=0須要修改成1

否則會出現/homg/git/repositories沒法生成的問題,提示沒有設置$GL_WILDREPOS

成功後會生成repositories目錄,裏面有2個子目錄,一個是gitolite-admin.git,一個是testing.git

7.在客戶端,克隆gitolite-admin,輸入如下命令:

git clone GitoliteServer:gitolite-admin.git

8.在客戶端,如今理論上的話使用命令:

ssh GitoliteServer會顯示:

@R  W gitolite-admin

@R  @testing

之類的,這是正常的

在輸入ssh git@localhost的時候應該進入shell纔對,可是卻出現了這樣的提示:

agent admitted failure to sign using the key

解決辦法是,在客戶端執行如下命令:

 ssh-add   ~/.ssh/id_rsa

相關文章
相關標籤/搜索