2016年11月22日 星期二

centos 建立 git ssh repository

一、建立帳號(git)
先建立一個使用者帳號來提供ssh的連線與操作:
adduser git
su git
cd ~
二、建立ssh使用者金鑰
mkdir .ssh
chmod 700 .ssh
cd .ssh
ssh-keygen -t rsa -b 4096
... // 產生 id_rsa 及 id_rsa.pub
mv id_rsa.pub authorized_keys

三、建立git專案(test.git)
在 git 的目錄下:
cd ~
mkdir test.git
cd test.git
git --bare init
cd ..

四、移除帳號的登入shell(避免遠端登入的安全疑慮)
修改/etc/passwd
git:x:...... :/user/bin/git-shell => 原來 sh 或 bash 改為 git-shell

五、client端下載私鑰(id_rsa)並安裝
以下載的id_rsa放置到.ssh下,並更改名稱:例如id_rsa_git
並增加或修改config檔:
Host git.server.com => server的ip或host name
User git
IdentifyFile ~/.ssh/id_rsa_git
最後使用git clone或push時,使用遠端呼叫:
git clone git@git.server.com/test.git
git remote add origin git@git.server.com/test.git
git push origin master
git branch --set-upstream-to=origin/master master

沒有留言:

張貼留言