1,安裝openssh服務斷和客戶端
yum -y install openssh2,安裝git和python-setuptools
yum -y install git python-setuptools3,獲取並安裝gitosis,來管理git倉庫
git clone4,在客戶端操作生成rsa公鑰,並把公鑰上傳到服務端的/tmp下cd gitosis
python setup.py install
ssh-keygen -t rsa5, 配置gitosisscp ~/.ssh/***.pub root@server_ip:/tmp # 「***」 是上一句shell生成的公鑰的名稱,「server_ip」是對應伺服器的公網ip位址
useradd git # 建立git管理賬戶6,為了操作時不輸入密碼將公鑰新增到authorized_keys使用私鑰訪問sudo -h -u git gitosis-init > /tmp/id_rsa.pub #將公鑰匯入gitosis管理,生成管理賬戶,初始化gitosis-admin管理賬戶
chmod 755 /home/git/repositories/gitosis-admin.git/hooks/post-update # 修改gitosis的push許可權
cat /tmp/id_rsa.pub >> /home/git/.ssh/authorized_keys7,gitosis配置,將管理專案 clone 到客戶端chmod 600 /home/git/.ssh/authorized_keys # 預設好像就是600
git clone [email protected]:/gitosis-admin.git8,新增新專案,修改gitosis-admin.config
vim gitosis.conf[gitosis]
[group gitosis-admin]
writable = gitosis-admin
members = root@vm1 #顯示使用者[email protected]是初始化gitosis公鑰的擁有者,是唯一能管理gitosis-admin專案的人
[group jay_fans] #組名稱
members = root@vm1 #金鑰使用者名稱
writable = git-test #專案名稱
9, 初始、增加及使用專案git-test
cd /desktop特別注意rsa公鑰的使用 :mkdir git-test
cd git-test
git init
touch readme
git add .
git commit -a -m 「init git-test」
git remote add origin git@server_ip:git-test.git
git push origin master
在建立新專案時(管理專案除外)最好不要使用gitosis-admin的管理公鑰,盡可能讓它只服務於管理專案,否則在push或者clone的時候可能會報錯例
解決的辦法是:
1.重新生成一對私鑰公鑰 並將公鑰上傳到管理專案的 keydir 使用者使用對應的私鑰進行操作 (推薦)
2.clone,push ,pull 使用全路徑 例如:
git clone git@server_ip:/home/git/repositories/git-test.git這樣使用起來不叫麻煩
CentOS搭建Git伺服器
root localhost desktop yum install y git 2 建立乙個git使用者,用來執行git服務 root localhost desktop useradd r s bin sh c git version control d home git git 3 設定許可權...
Centos搭建Git伺服器
1.安裝git centos安裝git只需要執行如下命令,直接安裝git yum install git2.建立git使用者 adduser git3.控制git使用者許可權,關掉bash許可權 vi etc passwd找到類似git x 1001 1001 home git bin bash 將...
CentOS搭建git伺服器
1.安裝 git 伺服器端 yum install y git安裝完後,檢視 git 版本 git version2.伺服器端建立 git 使用者,用來管理 git 服務,並為 git 使用者設定密碼 root localhost home id git id git 無此使用者 root loca...