[实践OK]svn: Can't convert string from 'UTF-8' to native encoding 的解决办法
页面构建时有中文名:
你里面是不是有中文文件名,出现:svn: Can't convert string from native encoding to 'UTF-8':
svn: ?\229?\143?\130?\228?\184?\142?\230?\180?\187?\229?\138?\168?\231?\172?\172?\228?\184?\137?\230?\173?\165-?\229?\143?\130?\228?\184?\142?\230?\136?\144?\229?\138?\159.html
实践OK如下:
于是在shell刚开始加入三行,如下:
#! #/bin/sh
export LC_CTYPE="zh_CN.UTF-8"
export LANG="zh_CN.UTF-8"
export LANGUAGE="en_US.UTF-8"
export LC_ALL="en_US.UTF-8"
[root@test ~]# locale
LANG=en_US.UTF-8
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=为空,我在上面给全设置了:-)
这样设置后,如下:
export LC_CTYPE="zh_CN.UTF-8"
export LANG="zh_CN.UTF-8"
export LANGUAGE="en_US.UTF-8"
export LC_ALL="en_US.UTF-8"
好了:
跳过“set-depth=exclude”
跳过“data”
于修订版 1444。
跳过“set-depth=exclude”
跳过“data”
————————————————————————————————————————————————————————————————
svn 版本库中有文件是以中文字符命名的,在 Linux 下 checkout 会报错:
svn: Can't convert string from 'UTF-8' to native encoding
然后 checkout 程序就退出了!
解决办法很简单,正确设置当前系统的 locale:
export LC_CTYPE="zh_CN.UTF-8"
然后重新 checkout 即可。
注意,根据你的系统字符集设置变量,如果 zh_CN.UTF-8 不行,有可能要改成 GB2312:
export LC_CTYPE="zh_CN.GB2312"
另外,看别人的帖子,有的变量名不同,用的是:
export LANG="zh_CN.UTF-8"
来自:
http://www.toplee.com/blog/566.html
http://svnbook.red-bean.com/en/1.2/svn.advanced.l10n.html
——————————————————————————————————————
方法一:只需要修改bash_profile文件就可以,添加下面几行:
export LC_ALL=en_US.UTF-8
export LANG=en_US.UTF-8
export LANGUAGE=en_US.UTF-8
然后source一下:
. ~/.bashrc
这时候,再重新进行SVN操作就会再报svn: Can't convert string from 'UTF-8' to native encoding:的错误了。
方法二:另一种解决办法
解决办法很简单,正确设置当前系统的 locale:
export LC_CTYPE=“zh_CN.UTF-8″
然后重新 checkout 即可。
摘自:http://www.111cn.net/sys/linux/60107.htm
你里面是不是有中文文件名,出现:svn: Can't convert string from native encoding to 'UTF-8':
svn: ?\229?\143?\130?\228?\184?\142?\230?\180?\187?\229?\138?\168?\231?\172?\172?\228?\184?\137?\230?\173?\165-?\229?\143?\130?\228?\184?\142?\230?\136?\144?\229?\138?\159.html
实践OK如下:
于是在shell刚开始加入三行,如下:
#! #/bin/sh
export LC_CTYPE="zh_CN.UTF-8"
export LANG="zh_CN.UTF-8"
export LANGUAGE="en_US.UTF-8"
export LC_ALL="en_US.UTF-8"
[root@test ~]# locale
LANG=en_US.UTF-8
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=为空,我在上面给全设置了:-)
这样设置后,如下:
export LC_CTYPE="zh_CN.UTF-8"
export LANG="zh_CN.UTF-8"
export LANGUAGE="en_US.UTF-8"
export LC_ALL="en_US.UTF-8"
好了:
跳过“set-depth=exclude”
跳过“data”
于修订版 1444。
跳过“set-depth=exclude”
跳过“data”
————————————————————————————————————————————————————————————————
svn 版本库中有文件是以中文字符命名的,在 Linux 下 checkout 会报错:
svn: Can't convert string from 'UTF-8' to native encoding
然后 checkout 程序就退出了!
解决办法很简单,正确设置当前系统的 locale:
export LC_CTYPE="zh_CN.UTF-8"
然后重新 checkout 即可。
注意,根据你的系统字符集设置变量,如果 zh_CN.UTF-8 不行,有可能要改成 GB2312:
export LC_CTYPE="zh_CN.GB2312"
另外,看别人的帖子,有的变量名不同,用的是:
export LANG="zh_CN.UTF-8"
来自:
http://www.toplee.com/blog/566.html
http://svnbook.red-bean.com/en/1.2/svn.advanced.l10n.html
——————————————————————————————————————
方法一:只需要修改bash_profile文件就可以,添加下面几行:
export LC_ALL=en_US.UTF-8
export LANG=en_US.UTF-8
export LANGUAGE=en_US.UTF-8
然后source一下:
. ~/.bashrc
这时候,再重新进行SVN操作就会再报svn: Can't convert string from 'UTF-8' to native encoding:的错误了。
方法二:另一种解决办法
解决办法很简单,正确设置当前系统的 locale:
export LC_CTYPE=“zh_CN.UTF-8″
然后重新 checkout 即可。
摘自:http://www.111cn.net/sys/linux/60107.htm
作者:jackxiang@向东博客 专注WEB应用 构架之美 --- 构架之美,在于尽态极妍 | 应用之美,在于药到病除
地址:http://jackxiang.com/post/7263/
版权所有。转载时必须以链接形式注明作者和原始出处及本声明!
最后编辑: jackxiang 编辑于2014-6-12 11:03
评论列表