SVN设置更新钩子

Posted BurningChen

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SVN设置更新钩子相关的知识,希望对你有一定的参考价值。

实现SVN与WEB同步,可以CO一个出来,也可以直接用自动更新web目录的方法,我们要在svn版本库中配置钩子来实现,就是创建一个post-commit的配置文件,对其进行简单的配置,简简单单的四步就可以实现Linux下SVN自动更新web目录配置。 
第一步:建立你的web程序目录

mkdir test,并且进入目录检出svn

我的做法是直接web目录检出svn再修改目录名

 第二步:在项目库的 hooks/ 目录下新建 post-commit 文件 【钩子脚本】

添加脚本如下

 

第三步:让post-commit有执行的权限(有读写即可,我是直接777了)

需要注意的是svn提交后出现255的报错是文件写入权限的问题。

 

第四步:这里就已经完成了,第四步就是测试了。

说明: 
export LANG=en_US.UTF-8是为了解决svn post commit 中文乱码,设置本地化编码,因为我的系统为UTF8编码,其实SVN默认就是UTF-8编码,如果编码是GBK的话不设置将会出现错误,而执行不成功,错误标识为

svn: Can\'t convert string from native encoding to \'GBK\'

  需要设置编码为:export LANG=zh_CN.GBK

如果提示:

post-commit hook failed (exit code 255) with no output

  赋予post-commit文件可执行权限 

以上是关于SVN设置更新钩子的主要内容,如果未能解决你的问题,请参考以下文章

[svn hooks]识别指定目录svn更新钩子

linux安装SVN并设置SVN钩子

svn配置钩子更新网站目录 每次提交 程序会卡在正在发送文件 有人说是 脚本有问题 手动执行脚本没有问题

SVN 钩子操作-同步更新web目录

关于svn钩子

svn上传文件钩子