svn:Can’t convert string from ‘UTF-8′ to native encoding

jackxiang 2010-3-11 20:31 | |
之前遇到一个问题,svn里面如果提交了中文文件名的文件或者包含其他特殊字符的文件名的文件,会导致linux或者freebsd上svn update/checkout的时候出现错误“svn: Can’t convert string from ‘UTF-8′ to native encoding”

这个问题是由系统字符集设置导致的,可以使用如下方法解决:
在bash的shell下,输入如下命令:


#export LC_CTYPE=en_US.UTF-8然
后运行如下命令确认发生的变化如下:

#locale将得到如下的结果返回:


LANG=
LC_COLLATE="C"
LC_CTYPE="en_US.UTF-8"
LC_MESSAGES="C"
LC_MONETARY="C"
LC_NUMERIC="C"
LC_TIME="C"

LC_ALL=可以把以上内容直接加到svn的钩子里面,解决提交时自动输出处理遇到的问题。


转自老乡李俊麟的博客:
http://www.toplee.com/blog/566.html


实践中发现,只修改一个还不成,要修改多个vi /etc/profile root是这样,但是nobody的环境还是C的,处处修改呢??思考Ing:
export LANG="zh_CN.UTF-8"
export LC_CTYPE="zh_CN.UTF-8"
export LC_NUMERIC="zh_CN.UTF-8"
export LC_TIME="zh_CN.UTF-8"
export LC_COLLATE="zh_CN.UTF-8"
export LC_MONETARY="zh_CN.UTF-8"
export LC_MESSAGES="zh_CN.UTF-8"
export LC_PAPER="zh_CN.UTF-8"
export LC_NAME="zh_CN.UTF-8"
export LC_ADDRESS="zh_CN.UTF-8"
export LC_TELEPHONE="zh_CN.UTF-8"
export LC_MEASUREMENT="zh_CN.UTF-8"
export LC_IDENTIFICATION="zh_CN.UTF-8"
export LC_ALL="zh_CN.UTF-8"

PHP时:这个函数有用,其实就一个就行了,上面其它的没有用的估计,如下:

setlocale(LC_ALL,'zh_CN.UTF-8');

作者:jackxiang@向东博客 专注WEB应用 构架之美 --- 构架之美,在于尽态极妍 | 应用之美,在于药到病除
地址:https://jackxiang.com/post/2795/
版权所有。转载时必须以链接形式注明作者和原始出处及本声明!


最后编辑: jackxiang 编辑于2012-4-28 17:18
评论列表
发表评论

昵称

网址

电邮

打开HTML 打开UBB 打开表情 隐藏 记住我 [登入] [注册]