1. 程式人生 > >修復svn hook導致的字符集錯誤

修復svn hook導致的字符集錯誤

arc mit could not from 問題 could wan put open

修改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導致的字符集錯誤