Linux下svn文件提交后自动同步更新到网站目录

在开发的过程将代码提交到SVN后,使用SVN的hook,通过post-commit脚本,在目标文件夹根下执行svn update操作,将更新内容同步到测试环境,这样开发调试非常方便。

post-commit脚本的内容如下:

#!/bin/sh
#修改字符编码
export LANG=en_US.UTF-8   #svn编码是UTF-8,这个主要是防止乱码

REPOS="$1"
REV="$2"
SVN="/usr/bin/svn"
WEB="/home/wwwrooot/code"    #站点目录

#update the code from the SVN
$SVN update(或者up) $WEB --username=username --password=password --non-interactive --no-auth-cache  #设置登陆账号密码并不缓存

同步命令:
svn checkout svn://ip:port/ $WEB –username=username –password=password

注意:

1、需要用export指定编码。
2、需要指定svn全路径。
3、代码CO出来之后,可以进行post-commit脚本的测试了。因为svn的hooks执行的时候不带有任何的环境变量,所以我们不能通过简单的 ./post-commit 进行代码的测试。
4、如果代码的位置很多,可以多写几个 $SVN update ..... 的路径
5、此脚本放在 svn 的 hooks 目录下,并赋予执行权限,否则SVN无法调用执行。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值