婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > 使用git代替FTP部署代碼到服務器的例子

使用git代替FTP部署代碼到服務器的例子

熱門標簽:地圖標注和圖片標注 語音平臺系統 滄州智能外呼系統收費 電銷機器人怎么收費 醫院地圖標注 忻州外呼系統接口對接 嘟聲的電銷機器人 湖北穩定外呼系統 洛陽便宜外呼系統廠家

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

1.全部更新,不管某些文件是否修改,都要重新傳一下服務器,浪費時間與流量
2.多臺服務器的重復上傳
3.代碼更新后,后續的一些操作不夠自動化

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

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

服務器端操作

首先創建一個裸庫,為什么是裸庫?因為這個庫不是真正用來修改的,我們也不允許在服務器上修改代碼,我們只是把它當作一個代碼中轉的地方:

復制代碼 代碼如下:

cd gitroot
mkdir projectname
cd projectname
git init --bare

添加我們的hook

復制代碼 代碼如下:

cd /hooks
touch post-receive

編輯post-receive的內容為下面的,其中sites/projectname,是我們存放網站代碼地方
復制代碼 代碼如下:

env -i git archive master | tar -x -C /sites/projectname
echo "遠程更新完畢"

本地git的操作

本地我們只需要添加一個遠程庫,在需要部署的時候push到遠程庫就行了,下面我們添加了一個名為publish的遠程庫

復制代碼 代碼如下:

git remote add publish username@xx.xx.xx.xx:/home/gitroot/projectname
git push publish master

可以強化的地方

這里演示的是一個簡單的小網站的部署過程,復雜的情況下我們還可以添加靜態資源版本更新,服務器重啟等等,舉一反三, 最大程序自動化我們的工作。

您可能感興趣的文章:
  • 詳解在Linux下搭建Git服務器
  • 詳解在CentOS下搭建自己的Git服務器
  • 在Linux下搭建Git服務器步驟
  • 阿里云Linux-CentOS系統下-搭建Git服務器詳解
  • 在Linux下搭建Git服務器的方法詳解
  • Git 教程之服務器搭建詳解
  • 在DigitalOcean的服務器上部署flaskblog應用
  • 一鍵備份gitolite服務器的Shell腳本
  • Git 刪除遠程服務器文件同時保留本地文件實例詳解

標簽:山南 防城港 96 宜賓 定州 內蒙古 日照 巴彥淖爾

巨人網絡通訊聲明:本文標題《使用git代替FTP部署代碼到服務器的例子》,本文關鍵詞  使用,git,代替,FTP,部署,代碼,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《使用git代替FTP部署代碼到服務器的例子》相關的同類信息!
  • 本頁收集關于使用git代替FTP部署代碼到服務器的例子的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 宁夏| 永安市| 喀喇沁旗| 桓台县| 禄丰县| 潞城市| 成武县| 保德县| 沙洋县| 象州县| 铁岭市| 石城县| 芦溪县| 临沧市| 九龙城区| 连城县| 吴川市| 锦屏县| 建宁县| 海宁市| 康平县| 濮阳县| 鄂托克前旗| 临武县| 大同市| 科技| 德钦县| 兴隆县| 安图县| 南靖县| 九台市| 胶南市| 徐汇区| 惠州市| 嵊泗县| 南昌市| 开阳县| 图木舒克市| 林西县| 肃宁县| 当阳市|