第一步,安裝git:html
源碼安裝參考:http://www.cnblogs.com/syuf/p/9151115.htmlgit
第二步,建立一個git用戶,用來運行git服務:shell
$ sudo adduser git安全
第三步,建立證書登陸:
收集全部須要登陸的用戶的公鑰,就是他們本身的id_rsa.pub文件,把全部公鑰導入到/home/git/.ssh/authorized_keys文件裏,一行一個。bash
$ cd /home/git/服務器
$ mkdir .sshapp
$ cd .sshssh
$ mkdir authorized_keysserver
第四步,初始化Git倉庫:htm
先選定一個目錄做爲Git倉庫,假定是/srv/sample.git,在/srv目錄下輸入命令:
$ sudo git init --bare sample.git
Git就會建立一個裸倉庫,裸倉庫沒有工做區,由於服務器上的Git倉庫純粹是爲了共享,因此不讓用戶直接登陸到服務器上去改工做區,而且服務器上的Git倉庫一般都以.git結尾。而後,把owner改成git:
$ sudo chown -R git:git sample.git
第五步,禁用shell登陸:
出於安全考慮,第二步建立的git用戶不容許登陸shell,這能夠經過編輯/etc/passwd文件完成。找到相似下面的一行:
git:x:500:500::/home/git:/bin/bash
改成:
git:x:500:500::/home/git:/usr/bin/git-shell
這樣,git用戶能夠正常經過ssh使用git,但沒法登陸shell,由於咱們爲git用戶指定的git-shell每次一登陸就自動退出。
第六步,克隆遠程倉庫:
如今,能夠經過git clone命令克隆遠程倉庫了,在各自的電腦上運行:
$ git clone git@server:/srv/sample.git
Cloning into 'sample'...
warning: You appear to have cloned an empty repository.
剩下的推送就簡單了。