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 git@serverip:/var/git/testproject.git 即可下拉代碼且無需密碼
新聞熱點
疑難解答