說明:
服務器操作系統:CentOS
服務器IP:192.168.21.134
SVN安裝路徑:/usr/local/svn
SVN項目路徑:/home/svn
SVN登錄賬號:osyunwei
SVN登錄密碼:123456
Web站點根目錄:/home/web
實現目的:
當svn項目中有任何修改更新時,系統會自動實時從svn中檢出文件并同步到Web站點根目錄
具體操作:
一、使用SVN中post-commit實現自動實時從svn中檢出文件并同步到Web站點根目錄
cd /home/svn/hooks
vi post-commit #編輯,添加以下代碼
#!/bin/shREPOS="$1"REV="$2"SVN_PATH=/usr/local/svn/binWEB_PATH=/home/webSVN_USER=osyunweiSVN_PASS=123456WEB_USER=wwwLOG_PATH=/tmp/svn.logecho `date "+%Y-%m-%d %H:%M:%S"` >> $LOG_PATHecho `whoami`,$REPOS,$REV >> $LOG_PATH$SVN_PATH/svn update $WEB_PATH --username $SVN_USER --password $SVN_PASS --no-auth-cache >> $LOG_PATHchown $WEB_USER.$WEB_USER -R $WEB_PATH
:wq! #保存退出
chown www:www /home/svn/hooks/post-commit #設置腳本所屬用戶組,www為web服務運行賬戶和組
chmod +x /home/svn/hooks/post-commit #添加腳本執行權限
說明:
whoami #執行此程序的用戶
REPOS="$1" #svn項目絕對路徑值
REV="$2" #最新版本號
--no-auth-cache #不保存賬戶認證信息
二、客戶端測試
使用svn客戶端添加一個文件之后,Web頁面會實時顯示出來!如下圖所示:

至此,Linux下SVN服務器自動更新文件到Web目錄教程完成。
|
新聞熱點
疑難解答