vscode里因svn: E000022: Can‘t convert string from native encoding to ‘UTF-8‘导致的source control无法使用

vscode使用svn时报错,无法通过扩展svn来操作,在setting.json里加上

"svn.showOutput": true,

让svn扩展在output里可以输出日志我们看到有如下的信息 

svn: warning: environment variable LANG is en_US.UTF-8
svn: warning: please check that your locale name is correct

svn: E000022: Can't convert string from native encoding to 'UTF-8'

看一下我们的字符集设置:

root@linaro-alip:/userdata/# locale
LANG=zh_CN.UTF-8
LANGUAGE=zh_CN.UTF-8
LC_CTYPE="zh_CN.UTF-8"
LC_NUMERIC="zh_CN.UTF-8"
LC_TIME="zh_CN.UTF-8"
LC_COLLATE="zh_CN.UTF-8"
LC_MONETARY="zh_CN.UTF-8"
LC_MESSAGES="zh_CN.UTF-8"
LC_PAPER="zh_CN.UTF-8"
LC_NAME="zh_CN.UTF-8"
LC_ADDRESS="zh_CN.UTF-8"
LC_TELEPHONE="zh_CN.UTF-8"
LC_MEASUREMENT="zh_CN.UTF-8"
LC_IDENTIFICATION="zh_CN.UTF-8"
LC_ALL=zh_CN.UTF-8

看到svn的环境里是 en_US.UTF-8,而我们的是zh_CN.UTF-8。

受这篇issue的启发Chinese comment not supported · Issue #286 · JohnstonCode/svn-scm (github.com)

找到svn扩展所在位置/root/.vscode-server/extensions/johnstoncode.svn-scm-2.15.7/out/extension.js,

查看了一下extension.js的内容,里面的所有的字符集设置都是

{LC_ALL:"en_US.UTF-8",LANG:"en_US.UTF-8"}

直接将该文件的所有en_US.UTF-8替换为 zh_CN.UTF-8,问题得到解决,svn扩展正常工作了

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值