利用SVN HOOKS腳本同步服務器

內部測試服務器同時兼做SVN服務器,所以配置了SVN HOOKS的post-commit腳本,在團隊成員成功提交了文件後,自動完成測試服務器的更新。
步驟如下:
1. cd /svnroot/hooks
2. cp post-commit.tmpl post-commit
3. 將post-commit的內容修改爲:
#!/bin/sh
SVN=/usr/bin/svn
WEB=/var/web/
$SVN up --username server --password 123456 $WEB
其中,/var/web爲測試服務器documentRoot的位置,是用
svn checkout svn://192.168.1.1/web /var/web
命令檢出的。
4. 修改post-commit的權限
chmod 755 post-commit

重啓svn,在red had e5中,沒有成功利用SVN <wbr>HOOKS腳本同步服務器,google一下,原來是編碼問題,添加一條export語句,文件內容爲:
#!/bin/sh
export lang = en_US.UTF-8
SVN=/usr/bin/svn
WEB=/var/web/
$SVN up --username server --password 123456 $WEB

成功利用SVN <wbr>HOOKS腳本同步服務器

服務器硬件升級,改用ubuntu,所有步驟一仍其舊,失敗利用SVN <wbr>HOOKS腳本同步服務器,百思不得其解。
增加一條語句:
whoami > /var/web/a.txt
發現是用root賬號執行的(之所以會這樣,可能因爲我沒有把svn配置爲apache模式,直接用svn://訪問)。檢出時用的是默認賬號下:
sudo svn checkout svn://192.168.1.1/web /var/web
沒有root賬號的信息被存儲。
su root
svn up /var/web
根據提示操作。
再提交文件,查看測試服務器文件版本,成功利用SVN <wbr>HOOKS腳本同步服務器

 

http://blog.sina.com.cn/s/blog_4e36083e0100h0lg.html

 

http://www.cnblogs.com/cocowool/archive/2011/03/08/1977748.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章