利用git快速部署遠端伺服器

2021-08-02 20:15:20 字數 953 閱讀 8397

本地開發完成後,通常會在伺服器上部署,有人會使用ftp,有人會使用scp, ftp和scp的時候為了方便我們通過還要tar或者zip一下, 這些做法也很不錯,但是它有一些問題

全部更新,不管某些檔案是否修改,都要重新傳一下伺服器,浪費時間與流量

多台伺服器的重複上傳

**更新後,後續的一些操作不夠自動化

上面的問題可以通過ssh直接遠端執行命令來解決,但是需要寫一些shell指令碼, 有沒有更簡單更高效的方法呢?有,那就是使用版本版本管理工具的hook!

這裡我說是版本管理工具而不是git,是因為svn、git、hg都是有相應的hook的, 原理大同小異。下面是git詳細的思路

首先建立乙個裸庫,為什麼是裸庫?因為這個庫不是真正用來修改的,我們也不允許在伺服器上修改**,我們只是把它當作乙個**中轉的地方

cd gitroot

mkdir projectname

cd projectname

git init --bare

cd /hooks

touch post-receive

env -i git archive master | tar -x

-c /sites/projectname

echo "遠端更新完畢"

本地我們只需要新增乙個遠端庫,在需要部署的時候push到遠端庫就行了,下面我們新增了乙個名為publish的遠端庫

git remote add publish [email protected]

.xx.xx:/home/gitroot/projectname

git push publish master

這裡演示的是乙個簡單的小**的部署過程,複雜的情況下我們還可以新增靜態資源版本更新,伺服器重啟等等,舉一反三, 最大程式自動化我們的工作

部署Git伺服器

yum安裝git軟體。root git server yum y install git 安裝git初始化乙個空倉庫。root git server mkdir p var lib git 為git建立倉庫目錄 root git server git init var lib git project...

git伺服器部署

環境描述 10.1.1.1 centos 6.6 git伺服器 10.1.1.2 centos 6.6 git客戶端 1 搭建git伺服器 1 安裝git yum install y git 2 建立git使用者,用於執行git服務 root localhost useradd git 3 選擇 d...

jenkins部署遠端伺服器

開啟jenkins頁面 新增外掛程式 系統管理 外掛程式管理 需要新增的外掛程式 publish over ssh 新增主機 系統管理 系統設定 找到publish over ssh 注意passphrase 如果私鑰設定了密碼就是私鑰的密碼,私鑰沒設定密碼可以不填 密碼登入 path to key...