使用钩子进行svn自动更新到web目录
(1)、cd /home/svn/hooks/
(2)、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
============================================================
然后加上自己将要执行的同步的命令
#!/bin/sh
export LANG=zh_CN.UTF-8 #(这句话比较重要,如果客户端跟服务器编码不一样会出现同步失败)
SVN_PATH=/usr/bin/svn #代表你的svn服务文件地址 如果是通过yum安装的话,或者已经注册了svn服务,则可以直接使用svn,不需要输入全路径)
WEB_PATH=/home/wwwroot/subject #你的web目录(将要同步过去的web项目路径)
LOG_PATH=/tmp/svn_update.log #同步日志
echo `whoami`,$REPOS,$REV >> $LOG_PATH
$SVN_PATH update --username admin --password 123456 $WEB_PATH --no-auth-cache >> $LOG_PATH
wq!保存退出,此时已经完成更新命令
===========================================================================================================================
设置post-commit文件可以执行权限(若不设置则会出现commit false 255错误)
chmod a+x post-commit (或者chmod 755 post-commit)