1. 程式人生 > >通過VisualSVN的POST-COMMIT鉤子自動部署程式碼

通過VisualSVN的POST-COMMIT鉤子自動部署程式碼

這段時間我們一直規劃LSGO Group的學習網路平臺,需求部分已經規劃完畢,說做就做,開始搭建環境,由於利用PHP+MYSQL技術,在伺服器端首先安裝了WAMPServer,以便提供Apache服務與MYSQL服務!

在程式碼的管理方面,我們利用Visual SVN來對大家的程式碼版本化。這樣一個問題就出現了,怎樣把提交的程式碼,及時同步到wamp的www目錄下呢?

首先,安裝VisualSVN Server,安裝完畢後,Create New Repository,例如叫做lsgoWeb,來存放我們的程式碼。如下圖所示:


其次,寫鉤子程式post-commit.bat,該程式放置在所建立Repository的hook目錄下,如本人的鉤子程式放在F:\Repositories\lsgoWeb\hooks目錄下。

鉤子程式如下:

@echo off
SET REPOS=%1
SET REV=%2
SET DIR=%REPOS%/hooks
SET WORKING_COPY=F:\wamp\www
SET PATH=%PATH%;
svn update %WORKING_COPY% --username lsgo_Ma --password 123

其中,WORKING_COPY為你所要同步到wamp的www目錄,username為lsgo_Ma,password 為123 這裡是使用該Repository使用者的許可權,如果不指定使用許可權,則只要該Repository發生變化,就同步到設定的目錄中,即最後一行程式碼修改為:

svn update %WORKING_COPY%

再次,重新啟動VisualSVN的服務,這個是必須的昂!

最後,測試剛才的鉤子程式。我們先在桌面的lsgoWeb資料夾中CheckOut一份程式碼,在wamp的www目錄中CheckOut一份程式碼,修改桌面lsgoWeb資料夾中的程式碼並進行提交Commit,然後發現wamp的www目錄下面對應的程式碼被修改了!

是不是很方便,利用鉤子,我們開發網站的小夥伴就不用霸佔團隊的伺服器來除錯程式碼啦!

相關推薦

通過VisualSVN的POST-COMMIT鉤子自動部署程式碼

這段時間我們一直規劃LSGO Group的學習網路平臺,需求部分已經規劃完畢,說做就做,開始搭建環境,由於利用PHP+MYSQL技術,在伺服器端首先安裝了WAMPServer,以便提供Apache服務與MYSQL服務! 在程式碼的管理方面,我們利用Visual SVN來對

svn hooks post-commit鉤子自動部署

  #!/bin/sh #修改為服務編碼 export LANG=zh_CN.utf-8 #Set variable REPOS="$1" REV="$2" SVN=/usr/bin/svn WEB=/home/www/develop LOG=/var/log/svn/post-

測試伺服器 SVN 生產環境,通過 post-commit 鉤子呼叫 Git 自動備份

折騰一個晚上,令人窒息的操作誕生了! 伺服器:阿里雲 ECS VCS:SVN 埠的開放是必不可少的,配置安全組內的規則即可 在此之前我僅會通過配置鉤子在提交程式碼時自動部署/釋出到 Web 環境中 保險起見,為了更好的儲存程式碼,就突發奇想的

jenkins自動部署程式碼上線1

企業部署程式碼上線是件比較麻煩的事情,還好我們有jenkins這個持續整合的軟體可以幫助我們做很多的事情,現在我們就 來測試用jenkins推送程式碼上線 個人不是很擅長書面的表達 ,直接幹 首先我們來安裝jenkins 1,jenkins啟動有2種方式,一種放在tomca

svn+post-commit實現自動部署

一、安裝 #yum install subversion 檢查是否安裝了svn #subversion –v 建立svn庫和對應的目錄 #mkdir /svn/www.test.com #svnadmin create /svn/www.test.com 二、配置 建立登入svn的使用者和密碼 #vim

Jenkins 實現前端自動打包,自動部署程式碼及郵件提醒功能

在之前的公司,我們前端使用webpack構建專案,專案構建完成後,我們會使用ftp或linux的一些命令工具上傳我們的檔案到伺服器上,這種方式雖然是可以,但是最近面試的時候,人家會問我前端如何部署專案,我就說我們公司目前是這樣操作的,最後人家會感覺很low,最後總之總之沒有面試上。因此今天來給大家介紹下使用J

svn 鉤子(hooks)自動部署倉庫程式碼到指定web目錄

web目錄:/home/wwwroot/projectsvn版本庫目錄:/opt/svn/project1.cd /opt/svn/project/hooks 2.執行 cp post-commit.tmpl  post-commit,3.執行vim post-commit

Gitee碼雲通過WebHooks實現自動同步程式碼部署

碼雲(Gitee)的WebHooks功能,可以在我們每次提交程式碼後,向我們設定的地址post一個更新的json資訊,這樣我們就可以根據該資訊,來自動拉去我們的程式碼,實現自動同步功能. 第一步

通過ssh主機互信打通內、外網,使用shell腳本自動部署測試環境

ssh 主機互信 scp 一、背景介紹 svnServer在內網環境,測試環境搭建在阿裏雲公網上,分為DBServer和WebServer。每次手動部署時都需要諸多步驟,開啟多個終端操作,可謂耗時又繁瑣,再加上新人經驗不足,部署過程時常出現問題。手動部署測試環境的步驟:服務器操作步驟

SVN使用鉤子函數(post-commit自動推送到業務服務器

svn方法對比:update和export對比update會產生隱藏文件,存在安全隱患,update是增量的,在代碼比較大的時候適用export直接導出幹凈的代碼,不會存在隱藏文件,不適合較大的庫 方法一:update 鉤子模版: 倉庫中hooks目錄下post-commint模版可以觸發shell>c

pre-commit鉤子程式碼質量檢查

目前基本使用三款js程式碼質量檢查工具: jslint, jshint, eslint。許多IDE裡面也有對應的檢查外掛,在每次ctrl + s 儲存檔案的時候,檢查當前檔案是否符合規範,保證程式碼質量。 許多團隊都會指定一套程式碼規範code review,更加嚴格的檢查每次程式碼修改。 也可以在

【視訊】Kubernetes1.12從零開始(六):從程式碼編譯到自動部署

作者: 李佶澳   轉載請保留:原文地址   釋出時間:2018/11/10 16:14:00 說明 kubefromscratch-ansible和kubefromscratch介紹 使用前準備

idea自動部署springboot jar包到遠端伺服器並通過指令碼啟動jar

 1.連線遠端伺服器:Tools->Deployment->Configuration 2.1配置好之後開啟遠端服務就可以直接在idea中進行拖拽檢視 2.2.也可以通過專案右擊deployment上傳jar到伺服器,此時jar會上傳到第一步圖三中配置的

php gitlab 自動更新程式碼鉤子

做之前查了幾個資料 : https://segmentfault.com/a/1190000011561808 https://segmentfault.com/a/1190000010698441 本文目的 本文的目的是配置實現在 GitLab 平臺上的程式碼自動部署。想要達到的效

持續整合之將程式碼自動部署至測試環境

將程式碼自動部署至測試環境 一:本文在上一篇文章的基礎之上繼續進行操作,上一篇實現了從git獲取程式碼並進行程式碼測試,本文將在上一篇的基礎之上實現將程式碼部署至測試環境。1.1:新建一個專案叫web-demo-deploy用於程式碼釋出,上一個專案web-demo可用於程式碼測試,當測試階段出現問題的

手摸手帶你部署git伺服器實現自動釋出程式碼

前段趁著活動買了個騰訊雲伺服器,一直沒抽時間去折騰,最近才開始部署了一個自己專屬的git倉庫,實現程式碼自動釋出部署功能。(我也想成為努力向上,積極進取的有志青年啊!)文章的內容基本都是參考自谷歌搜尋,然後按我的思路重新整理一遍,既是為了分享也是為了鞏固知識。 我也是第一次折騰伺服器,前期部署就

Linux+git+springboot+maven 實現自動更新程式碼自動部署

 思路:首先是在linux伺服器上建立一個git倉庫,然後克隆程式碼到倉庫,寫一個指令碼先拉取程式碼,在構建最後部署 1. 建立git倉庫     建立一個資料夾執行 git init 命令,初始化倉庫 2. 克隆程式碼    

手摸手,帶你實現程式碼自動部署

為什麼? 為什麼要實現自動部署? 在2個月的時間裡,一直都在忙著整理部落格,每一個程式設計師都有一個部落格夢(當然也不排除有些是沒有的),我先後使用過各種部落格系統: vuepress react-static jekyll hexo ... 這些都因為前前後後的原因,

git hook實現程式碼自動部署

原理與流程 git使用者執行git push操作 遠端倉庫發現有使用者執行了push操作,就會執行一個指令碼post-receive(鉤子) 在post-receive指令碼中,將git倉庫的程式碼拷貝到web站點目錄下 建立git倉庫 我們可以在自己的伺服器上建立g

Jenkins+Vue+SVN實現程式碼提交後自動構建自動部署釋出

因為處於開發階段,程式碼更新比較頻繁,老闆時不時要改個東西,改完後還需要釋出 更新 提交 npm i npm run build… 一系列操作下來是賊煩人啊 就去網上搜了下jenkins和vue的相關資料,然後整理了下,以後程式碼更新後就可以自動打包釋出了,解放