修复svn hook导致的字符集错误

Posted 卡卡西村长的小灶

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了修复svn hook导致的字符集错误相关的知识,希望对你有一定的参考价值。

修改pre-commit钩子,如果返回中文信息,可能会报如下错误:

Error output could not be translated from the native locale to UTF-8.

网上流传的解决方案,是增加以下代码:
export LANG=zh_CN.UTF-8

该方法实测无效!

其实这是svn的一个bug,存在了很长时间,到svn1.8时才彻底修复,修复方案是,升级到svn1.8或更高版本,然后修改apache mod_dav_svn插件的配置。

具体步骤如下:

第一步
修改centos repo来源
vim /etc/yum.repos.d/wandisco-svn.repo
输入
[WandiscoSVN]
name=Wandisco SVN Repo
baseurl=http://opensource.wandisco.com/centos/$releasever/svn-1.8/RPMS/$basearch/
enabled=1
gpgcheck=0
保存

第二步
yum install subversion
yum install mod_dav_svn

如果报版本冲突,通过yum remove把老版本的subversion删除。

安装后确认版本号
svn --version

第三步
vim /etc/httpd/conf/httpd.conf
增加
<IfModule mod_dav_fs.c>
# Location of the WebDAV lock database.
DAVLockDB /var/lib/dav/lockdb
SVNUseUTF8 On
</IfModule>
保存
service httpd restart


问题彻底解决。

 

以上是关于修复svn hook导致的字符集错误的主要内容,如果未能解决你的问题,请参考以下文章

如何修复文本字段中错误的键盘布局导致的错误

如何修复“不正确的字符串值”错误?

如何修复“不正确的字符串值”错误?

关于svn hooks拦截设置

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

svn 强制用户添加注释 和 允许用户修改注释