说明: 服务器操作系统: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/sh REPOS="$1" REV="$2" SVN_PATH=/usr/local/svn/bin WEB_PATH=/home/web SVN_USER=osyunwei SVN_PASS=123456 WEB_USER=www LOG_PATH=/tmp/svn.log echo `date "+%Y-%m-%d %H:%M:%S"` >> $LOG_PATH echo `whoami`,$REPOS,$REV >> $LOG_PATH $SVN_PATH/svn update $WEB_PATH --username $SVN_USER --password $SVN_PASS --no-auth-cache >> $LOG_PATH chown $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页面会实时显示出来!如下图所示: 系统运维 www.osyunwei.com 温馨提醒:系统运维原创内容©版权所有,转载请注明出处及原文链接
至此,Linux下SVN服务器自动更新文件到Web目录教程完成。 (责任编辑:IT) |