搭建git遠程服務器
linux
實驗準備:git
centos 6.5 x64 倉庫web
centos 6.5 x64 線上應用服務器shell
win7 本地開發者電腦vim
1、linux安裝gitcentos
yum -y install gitbash
2、建立git文件存放的目錄服務器
mkdir -pv /data/gitapp
3、建立git用戶ssh
useradd giter
echo '123456' | passwd --stdin giter
4、切換到giter用戶及建立密鑰
su - giter
ssh-keygen -t rsa一路回車
5、下載密鑰對到win7和把公鑰存放到giter用戶
sz id_rsa*
cat `~/.ssh/id_rsa.put` >> authorized_keys
修改一下權限,不然沒法登陸
chmod 700 .ssh
chmod 600 .ssh/authorized_keys
6、測試利用密鑰登陸giter
登陸前還須要修改一下sshd_config,修改如下項。
vi /etc/ssh/sshd_config
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile.ssh/authorized_keys
這項目最後再修改(不用密碼登陸)
PasswordAuthentication no
7、在服務器目錄生成倉庫(su -giter)
cd /data/git
git init --bare 3899w.git
chmod -R775 3899w.git
8、win7中clone倉庫到本地,我這裏是利用tortoisegit圖形界面處理(首頁須要安裝)
克隆地址:ssh://giter@120.24.62.217:/data/git/3899w.git
到這裏遠程的服務器的搭建基本完成,可是通常這個只是一個倉庫,若是須要發佈到各個應用服務器就須要,利用web app工具進行界面上提交上線。
這裏咱們先不介紹上線的web app,可是能夠先搭建上線的命令行提交上線
接下來就是在應用服務器上面操做(須要一個上線代碼的用戶wwwgit-本身建立)
1、安裝git
yum -y install git
2、生成密鑰對
ssh-keygen -t rsa
3、上傳公鑰到giter服務器(這裏上傳須要giter密碼,這就是爲何前面要生前giter密碼,而且容許登陸的緣由)
ssh-copy-id -i ~/.ssh/id_rsa.pubgiter@120.24.62.217
4、測試無密碼登陸giter
sshgiter@120.24.62.217
5、成功後就能夠clone倉庫代碼到應用服務器應用即上線代碼
gitclone ssh://giter@120.24.62.217:/data/git/3899w.git
6、最後記得修改不能讓人用giter帳號登陸服務器
vim/etc/passwd
/bin/bash-> /usr/bin/git-shell
這個過程中可能有些須要修改目錄權限的問題,到時候直接把相關目錄所屬主和權限這樣修改
倉庫服務器
chown-R giter.giter /data/git
chmod-R 775 /data/git
應用服務器
chown-R www.wwwgit /data/www
chmod-R 770 /data/www
1