A-A+
读取SVN注释,并实现SVN自动发布的脚本
实现过程,是使用了svn的一个hook的功能,我们调用了 post-commit 来做一些当提交完成后的操作。
1. 编辑svn代码库服务器上文件: svn/lxy/hooks/post-commit
#!/bin/sh
REPOS="$1"
REV="$2"
export PATH="/usr/local/svn/bin:$PATH"#由于代码是apache的进程用户www运行,所以需要设置环境变量
export LC_CTYPE=zh_CN.UTF-8
if (svnlook log -r $REV $REPOS | grep "auto_deploy" )#当用户提交时注释中写上"auto_deploy",就自动部署到apache目录
then
svn export --username lxy --password lxy "svn://8.8.8.8:8888/lxy/code/dev/zwh" /home/wwwroot/lxy.me --force --no-auth-cache
fi
2.linux下需要将脚本所属用户和组设置为apache用户和组,执行如下命令
chown www.www post-commit