svn 钩子(hooks)自动部署仓库代码到指定web目录
web目录:/home/wwwroot/project
svn版本库目录:/opt/svn/project
1.cd /opt/svn/project/hooks
REPOS="$1"
REV="$2"
export LC_ALL="zh_CN.UTF-8"
export LANG="en_US.UTF-8"
#svn命令目录
SVN=/usr/bin/svn
#web项目目录
WEB=/home/wwwroot/project
#执行更新代码到指定项目目录 username为在/opt/svn/project/conf/passwd中创建的用户名与密码
$SVN update $WEB --username admin111 password admin111
#记录日志
CURDATE = 'date'
echo "Code to by at $CURDATE $REPOS $REV" >> /root/code-hooks.log
chmod -R 755 $WEB
保存退出
4.然后执行 chmod +x post-commit
5.到/home/wwwroot下checkout项目
svn版本库目录:/opt/svn/project
1.cd /opt/svn/project/hooks
2.执行 cp post-commit.tmpl post-commit,
3.执行vim post-commit 内容如下
REPOS="$1"
REV="$2"
export LC_ALL="zh_CN.UTF-8"
export LANG="en_US.UTF-8"
#svn命令目录
SVN=/usr/bin/svn
#web项目目录
WEB=/home/wwwroot/project
#执行更新代码到指定项目目录 username为在/opt/svn/project/conf/passwd中创建的用户名与密码
$SVN update $WEB --username admin111 password admin111
#记录日志
CURDATE = 'date'
echo "Code to by at $CURDATE $REPOS $REV" >> /root/code-hooks.log
chmod -R 755 $WEB
保存退出
4.然后执行 chmod +x post-commit
5.到/home/wwwroot下checkout项目
svn checkout svn://127.0.0.1/project/ 这里写你svn服务器的仓库地址