linux+svn自動同步
1,因為web專案在開發階段需要隨時更新到本地伺服器上
2,客戶端開發人員需要隨時獲取最新更新的介面API
3,手動去更新不是最終的解決方案
------------------------------------------------------------------------------------------------------------------------------------------------------------------------
svn目錄 :/opt/svn/trunk/
專案目錄:/opt/lampp/test/
------------------------------------------------------------------------------------------------------------------------------------------------------------------------
cd /var/wwww/html/php 進入專案目錄把專案checkout出來
svn checkout svn://localhost/php /opt/lampp/test/
(前面那個路徑代表svn存放專案的地址 後面的路徑代表web專案檢測出來的路徑
若後面的路徑不填寫則會在當前所在目錄檢測存放)
------------------------------------------------------------------------------------------------------------------------------------------------------------------------
1,cd /opt/svn/trunk/hooks/
2,cp cp post-commit.tmpl post-commit (複製這份模板檔案,因為svn將要執行的是post-commit檔案)
3,vim post-commit
將最後面幾行刪除
REPOS="$1"
REV="$2"
mailer.py commit "$REPOS" "$REV" /path/to/mailer.conf
============================================================
然後加上自己將要執行的同步的命令
export LANG=zh_CN.UTF-8 #(這句話比較重要,如果客戶端跟伺服器編碼不一樣會出現同步失敗)
WEB=/opt/lampp/test #(將要同步過去的web專案路徑)
/usr/bin/svn update $WEB #(/usr/bin/svn代表你的svn服務檔案地址 如果是通過yum安裝的話,或者已經註冊了svn服務,則可以直接使用svn,不需要輸入全路徑)
wq!儲存退出,此時已經完成更新命令
===========================================================================================================================
設定post-commit檔案可以執行許可權(若不設定則會出現commit false 255錯誤)
chmod a+x post-commit (或者chmod 777 post-commit)
---------------------
作者:一句呵呵解千愁
來源:CSDN
原文:https://blog.csdn.net/xuelinmei_happy/article/details/34849751
版權宣告:本文為博主原創文章,轉載請附上博文連結!