搭建 git 服務端需要擁有一臺私人伺服器,最好還有一個域名。
如果沒有域名也不要緊用 ip 地址代替即可。
step1 在服務端下載 git
以 CentOS 為例
# 遠端連結服伺服器 用賬號密碼登入 或者用 ssh 免密登陸
yum install git
複製程式碼
使用 yum install git 命令安裝 git
沒有 yum 的朋友需要自行安裝 yum
接下來我們 建立一個git使用者組和使用者,用來執行git服務:
groupadd git
useradd git -g git
複製程式碼
step2 建立證書登入
收集所有需要登入的使用者的公鑰,公鑰位於id_rsa.pub檔案中,把我們的公鑰匯入到/home/git/.ssh/authorized_keys檔案裡,一行一個。
如果沒有該檔案那麼需要在本地的個人電腦上建立它(不是在伺服器上建立):
cd ../
cd ../
cd ../
cd /home/git/
mkdir .ssh
touch .ssh/authorized_keys
cd .ssh
vi authorized_keys
複製程式碼
注意:必須在伺服器/home/git/目錄下新建.ssh和服務端倉庫目錄要不然無效。
把我們的公鑰匯入到/home/git/.ssh/authorized_keys檔案裡,一行一個。
按 o 鍵進入編輯模式
編輯完畢後
按 esc
:wq 回車 儲存並退出
step3
初始化倉庫
cd ../
cd ../
cd ../
cd /home
mikdir gitrepo # 建立存放遠端倉庫的資料夾
cd /gitrepo # 進入資料夾
git init --bare project.git # 建立一個裸倉庫
複製程式碼
然後,把倉庫所屬使用者改為git:
chown -R git:git project.git
複製程式碼
克隆倉庫
在含有服務端 authorized_keys 公鑰的本地機器操作
git clone git@47.107.154.169:/home/gitrepo/project.git
# 因為我的ip繫結了域名所以我的是下面的寫法
# git clone git@pschina.work:/home/gitrepo/project.git
複製程式碼
然後機器上會出現 你克隆了一個空倉庫的提示
warning: You appear to have cloned an empty repository.
複製程式碼
接下來的 操作就簡單了
git add .
git commit -m 'xxx'
git push
# 等等
複製程式碼
(完)