最近自己跟同學(xué)一起打算做個小項目靠益,決定用git來做版本控制液肌,大家也方便同步代碼燃箭。把自己團(tuán)隊的項目公開放到github不太合適,私人倉庫又要收美刀鸥咖,想起來自己還有個學(xué)生折扣的阿里云就打算自己動手搭建了燕鸽。
以下記錄一下搭建過程。
首先git肯定是裝好了的啼辣,恩啊研。
添加git用戶
添加一個git賬戶方便管理,當(dāng)然不添加也沒問題鸥拧。
# adduser git
設(shè)置好用戶密碼
初始化Git倉庫
cd
到要建倉庫的文件夾然后執(zhí)行
# git init --bare example.git
example 是要建立的倉庫名
禁止git用戶登陸Shell
默認(rèn)添加的用戶是可以登陸的党远,為了安全期間應(yīng)該設(shè)置為不能登陸
可以利用 git-shell
作為git的默認(rèn)shell來實現(xiàn)
首先查看一下系統(tǒng)的 git-shell
安裝路徑
$ which git-shell
/usr/bin/git-shell
編輯 /etc/passwd
文件找到類似下面這行
git:x:1001:1000:,,,:/home/git:/usr/bin/bash
把它改為
git:x:1001:1000:,,,:/home/git:/usr/bin/git-shell
這樣git用戶就無法登陸系統(tǒng)了
克隆倉庫
$ git clone git@server:/home/git/example.git
ssh無密碼登陸
按照之前的配置應(yīng)該可以正常clone了,但是每次都要輸入git用戶的密碼很麻煩富弦,可以通過把用戶的公匙上傳到服務(wù)器然后復(fù)制內(nèi)容到.ssh/authorized_keys
這個文件中沟娱。使用下面這條命令直接追加進(jìn)去
$ cat id_rsa.pub >> authorized_keys