用 SVN 的 POST-COMMIT 钩子 HOOKS,在提交代码的同时进行部署啊。
1、找到 SVN 项目的 HOOKS 目录。目录中默认会几个对应操作的钩子模板,我们需要创建一个 post-commit 的文件。
2、post-commit 的主要内容
#/bin/bashREPOS="$1" 
REV="$2" 
WEB_PATH="/home/fltrpsrv2/www" 
TEST_PATH="/home/apache/testx/www.h.cn" 
  
export LANG=zh_CN.UTF-8 
  
CURDATE=`date` 
echo "Code Deployed By at $CURDATE" >> /home/fltrpsrv2/svn/www.h.cn/hooks/code_deploy_log 
/usr/local/bin/svn update --username xxx --password xxx /home/apache/htdocs/ >> /home/fltrpsrv2/svn/www.h.cn/hooks/ 
   code_deploy_log
3、接下来需要我们首先 Checkout 一份代码到 WEB 的服务目录中。
4、代码 CO 出来之后,可以进行 post-commit 脚本的测试了。因为 svn 的 hooks 执行的时候不带有任何的环境变量,所以我们不能通过简单的 ./post-commit 进行代码的测试。必须要使用sudo su 等命令切换到 svn 或者 apache 服务器运行用户下,用下面的方法进行测试。windows 要用管理员权限。
env – ./post-commit