linux svn钩子 svn同步当ftp用

葫芦的运维日志

下一篇 搜索 上一篇

2014/02/02 17:43


好处,可以再提交更新时,同时同步更新指定目录下的文件。 我这里主要用在了同步web页面上。
最开始需要搭建好svn服务
并运行svn服务命令:svnserve -d -r /opt/svn
第一步:建立你的web程序目录
mkdir /opt/svntongbu
很多教程忽略了下面,这一步进入/opt/svn/svntongbu目录。

svn checkout svn://192.168.13.166/project 不重命名文件夹,直接在当前目录下检出

svn checkout svn://192.168.13.166/project test 检出文件并且重命名文件夹为test

第二步:在项目库的 hooks/ 目录下新建 post-commit 文件 【钩子脚本】
添加脚本内容如下:
#!/bin/sh
REPOS="$1"
REV="$2"
mailer.py commit "$REPOS" "$REV" /path/to/mailer.conf
export LANG=zh_CN.UTF-8
SVN=/usr/bin/svn #svn可执行文件
STATIC_DIR=/opt/svntongbu/project #要同步更新的目录
${SVN} update ${STATIC_DIR} --username "wangzi" --password "wangzi"
#如果是实时更新网页chown www:www 路径

第三步:让post-commit有执行的权限 chmod u+x post-commit这里就已经完成了

问题:如果遇到post-commit失败退出代码127

试着用命令找下对应的路径并修改post-commit,命令 whereis svn  找出可执行的 svn的路径



 

葫芦的运维日志

上一篇 搜索 下一篇
© 冰糖葫芦甜(bthlt.com) 2019 王梓 赞助联系方式 陕ICP备17005322号