在伺服器(CentOS)上使用 git 部署專案
主要流程:
git push git pull
這裡的 git 倉庫有兩種方式實現:
- 使用第三方 gitlab 儲存與管理程式碼。
- 在伺服器上搭建自己的 git 倉庫來儲存與管理程式碼。
使用 gitlab 網路可能會比較慢:D
方式一:使用 gitlab 倉庫
- 服務端使用 yum 全域性(-y)安裝 git 。
$ yum -y install git
- 客戶端(mac)安裝 git。
如果你的 mac 還沒有安裝過 git,只需要開啟終端,輸入 git,系統會自動提示你安裝 git ~
- 客戶端(win)安裝 git。
在 windows 上需要下載 git 安裝包,這裡提供官網的地址(ofollow,noindex">git官網下載 ),安裝即可。
- 檢視 git 安裝版本:
$ git --version
mac 上開啟終端(command + 空格,搜尋“終端”);
win 上開啟 git 客戶端;
- 服務端與客戶端建立 git 使用者。
# 配置使用者名稱與郵箱 $ git config --global user.name "yourname" $ git config --global user.email "youremail" # 生成 ssh 金鑰 $ ssh-keygen -t rsa -C "youremail" # mac 檢視 ssh 金鑰 $ cat ~/.ssh/id_rsa.pub # win 的金鑰檔案在 /User/yourname/.ssh/id_rsa.pub
將~/.ssh/id_rsa.pub
檔案內容全部複製到gitlab.com
[setting -> SHH-keys -> key] 中,儲存。然後在本地檢視是否連線成功:
$ ssh -T [email protected]
- 在 gitlab 上建立專案,複製 ssh 地址,服務端客戶端上克隆這個地址就可以了。
方式二:在伺服器上搭建 git 倉庫
- 服務端使用 yum 全域性(-y)安裝 git 。
$ yum -y install git
- 建立服務端的使用者:git。
# 在 /usr/home/ 建立使用者 git 的目錄 # 這個目錄等會還會儲存來自客戶端的 ssh-keys $ cd /usr/home $ useradd git $ passwd git
- 配置使用者 git 的許可權。
# 禁用 git 使用者 shell 登陸 $ vi /etc/passwd # 修改為如下,一般在最後一行: git:x:1000:1000::/home/git:/usr/bin/git-shell
- 建立一個 git 倉庫。
# 在 /usr/local/git 下建立 test 專案 # 建立一個目錄 git 作為所有的專案資料夾 $ cd /usr/local $ mkdir git # 建立 test 專案倉庫 $ git init --bare test.git
- 分配 git 倉庫的許可權。
$ chown -R git:git test.git
- 伺服器上加入客戶端的 git 金鑰。
# 本地檢視金鑰複製檔案所有內容 $ cat ~/.ssh/id_rsa.pub # 服務端開啟 /home/git/.ssh/authorized_keys 檔案 # 將複製內容貼上進去,儲存退出 $ vi /home/git/.ssh/authorized_keys
/home/git/.ssh/ 的 .ssh 目錄需要自己建立。
- 客戶端克隆伺服器上的專案。
$ git clone [email protected]:/usr/local/git/test.git
輸入 git 使用者的密碼就可以了。
- 服務端克隆專案。
# 進入你的專案資料夾 $ cd /data $ git clone [email protected]:/usr/local/git/test.git
以後更新程式碼就在 /data/test 目錄下git pull
一下。
附錄:git 常用命令
git status git add . git commit -m '更新說明' git push git pull