標籤:
centos伺服器下搭建git倉庫,使用ssh協議管理倉庫代碼許可權 git官網(http://git-scm.com/)
使用ssh協議:
一、安裝git,使用yum install git 或者使用 源碼包安裝git-2.2.0.tar.gz(https://www.kernel.org/pub/software/scm/git/)
建立git使用者與使用者組
# useradd git
# passwd git
二,建立git倉庫(倉庫位置自己隨使用者自己決定,例/var/git/testproject.git)
1,在/var/git目錄下建立 項目名稱testproject.git 檔案夾
2,# cd /var/git/testproject.git 進入檔案夾,
# git init --bare 建立裸庫(這裡需要注意--bare參數,表示是要產生一個"乾淨"的倉庫)
3,修改許可權
# chown -R git testproject.git
# chgrp -R git testproject.git
# chmod -R 775 testproject.git
# chmod g+s -R testproject.git
三,配置ssh公開金鑰(無需密碼更新程式碼程式庫)
1,產生 SSH 公開金鑰:
每個需要使用git倉庫的軟體開發人員,需要在使用git程式碼程式庫的電腦上面產生一個ssh公開金鑰,具體步驟:
1.1 進入自己的~/.ssh目錄(win系統在使用者檔案夾下:C:\Users\Administrator\.ssh),查看有沒有用 檔案名稱 和 檔案名稱.pub 來命名的一對檔案,這個 檔案名稱 通常是 id_dsa 或者 id_rsa。
*.pub 檔案是公開金鑰,另一個檔案是密鑰。假如沒有這些檔案(或者乾脆連 .ssh 目錄都沒有),在linux下,你可以用 ssh-keygen 的程式來建立它們,該程式在 Linux/Mac 系統由 SSH 包提供; 在 Windows 上則包含在 MSysGit 包裡,git安裝目錄中,bin路徑下ssh-keygen.exe。
運行後,它先要求你確認儲存公開金鑰的位置(.ssh/id_rsa),然後它會讓你重複一個密碼兩次,如果不想在使用公開金鑰的時候輸入密碼,可以留空。
2, 複製原生*.pub中的內容添加至git倉庫所在伺服器的git使用者檔案夾下的/home/git/.ssh/authorized_keys檔案中 可使用命令# $ cat /tmp/id_rsa.john.pub >> ~/.ssh/authorized_keys,將公開金鑰內容追加至授權檔案中。
如果 ~/.ssh/authorized_keys 不存在,你可以直接將id_rsa.pub 檔案複製過去並重新命名為authorized_keys即可。
3, ssh使用公開金鑰授權不通過的問題解決:
查看並修改ssh設定檔:
# vi /etc/ssh/sshd_config
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
儲存後,service sshd restart 生效
四,使用倉庫
1,在獲得授權的電腦上,開啟git bash,
# git clone [email protected]:/var/git/testproject.git 即可下拉代碼且無需密碼
CENTOS下搭建git代碼倉庫 ssh協議