在我前面的文章《SVN提交强制写入注释及相关扩展阅读》中,提到了提交时强制写入注释的方法
在使用Apache进行SVN管理,而不是使用svnserve的时候,在钩子hooks中填写的中文脚本有可能无法正确显示,会提示
Error output could not be translated from the native locale to UTF-8.
网上大多数的文章给出的解决方案是:
修改钩子hooks的编码
export LANG=zh_CN.UTF-8 export LC_ALL=zh_CN.UTF-8
或者修改Apache的编码
AddDefaultCharset UTF-8
都不能解决问题,因为这些解决方案都是针对svnserve的。
正确的姿势
问题出现的原因是因为subversion的版本太低
比如centos6自己的源带的subversion版本是1.6的
升级的方法
cat > /etc/yum.repos.d/wandisco-svn.repo <<EOF [WandiscoSVN] name=Wandisco SVN Repo baseurl=http://opensource.wandisco.com/centos/6/svn-1.9/RPMS/\$basearch/ enabled=1 gpgcheck=0 EOF yum -y install subversion
在wandisco网站找到对应的系统版本和最新的subversion版本并填写到baseurl里
修改http.conf添加UTF8支持,并重启httpd
<IfModule mod_dav_fs.c> # Location of the WebDAV lock database. DAVLockDB /var/lib/dav/lockdb SVNUseUTF8 On </IfModule>
问题就解决了。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。