一、環境
作業系統:centos(linux)
基礎環境:perl、openssh
二、物料
gitolite(需要perl執行環境)
git-2.7.2.tar.gz
注意:如果不能正常安裝,則是因為缺少依賴包。
三、安裝步驟
1.建立gitserver使用者
在root使用者下執行下面命令
adduser git --新增使用者git
passwd git --設定git的密碼
2.安裝 git(需要聯網)
(1)在root使用者下執行下面命令
su git --切換為git使用者
mkdir bin --在home目錄下建立bin資料夾
git clone --轉殖git原始碼
ls -- 檢視目錄結構:bin gitolite(主要使用者驗證,可省略)
./gitolite/install -to /home/git/bin/ --安裝gitolite到bin資料夾
cd bin
--切換到home目錄下的bin以便檢視安裝生成的檔案
ls --檢視安裝生成的檔案:commands gitolite gitolite-shell lib syntactic-sugar triggers version vref
3.配置gitolite管理員
(1)生成管理員賬戶的公鑰
在git使用者下執行下面命令
ssh-keygen --提示輸入生成檔名(可選,預設id_rsa),然後設定密碼(可選)
mkdir /home/rsapubs
cp /home/.ssh/id_rsa.pub /home/rsapubs/admin.pub
(2)為gitolite配置管理員
在剛才生成的bin目錄下執行下面命令
gitolite setup -pk admin.pub --這裡admin.pub指的是剛才生成的管理員公鑰
ls --檢視生成檔案(在home目錄下):bin gitolite projects.list repositories
(3)轉殖管理庫
git clone [email protected]:gitolite-admin --這裡的ip位址指的是伺服器的ip即本機的ip,在執行過程中會提示輸入剛才生成公鑰時輸入的密碼
cd gitolite-admin
--切換到轉殖下來的資料夾
ls --檢視目錄結構:conf--許可權配置 keydir--使用者公鑰資料夾
四、許可權管理
1.建立庫、新增使用者
例如:test123使用者訪問git伺服器上的firstrepo
(1)test123使用者應該向管理員(git伺服器)提交無密碼公鑰
(2)管理員把提交上來的公鑰放在gitolite-admin目錄下keydir下面
(3)管理員建立firstrepo庫,並給test123分配許可權
cd gitolite-admin/conf
vi gitolite.conf
預設內容為:
repo gitolite-admin
rw+ = admin
repo testing
rw+ = @all
增加內容:
@testgroup=admin test123
--建立使用者組testgroup
repo firstrepo
--定義git庫
rw+ = @testgroup
--賦予許可權
(4)提交配置到git伺服器
git add *
git commit -m "新增使用者test123並建立庫firstrepo"
git push origin master
伺服器配置完成。
五、客戶端測試
1.test123使用者轉殖firstrepo
git clone git@伺服器ip或者網域名稱:firstrepo
沒有錯誤表示測試成功。
linux下搭建git伺服器
在linux下搭建git倉庫還是很方便的。新增使用者 user add git 設定密碼 passwd git 安全起見可以將git使用者的預設shell設定為git shell,以防git使用者登陸系統 vim etc passwd 將 bin bash git x 1000 1000 home ...
Linux下搭建Git伺服器
安裝 git linux 做為伺服器端系統,windows 作為客戶端系統,分別安裝 git 伺服器端 yum install y git 安裝完後,檢視 git 版本 root localhost git version git version 1.7.1 伺服器端建立 git 使用者,用來管理 ...
linux下搭建git伺服器
1 新增git使用者 useradd m git 2 修改git使用者密碼 密碼為git passwd git 3 解壓git 1.7.12.2.tar.gz並安裝git tar xvf git 1.7.12.2.tar.gz cd git 1.7.12.2 make make install 4 ...