命令行 svn 不会执行任何选项 - “无法将字符串从本机编码转换为 UTF-8”

问题描述 投票:0回答:1

我已经使用 svn(通过 TortoiseSVN)很多年了。我最近(几个月)开始在虚幻 5 中使用它。 我刚刚在运行命令行 svn 时看到一条新消息:“无法将字符串从本机编码转换为‘UTF-8’”。

我环顾四周,发现此消息可能是由文件名或提交中的非 UTF-8 字符引起的,但这会影响我的所有存储库,其中一些纯粹是我自己的,并且没有最近的提交(因此不受该问题的影响)。 没有任何 svn 命令可以工作,无论是 GUI 还是命令行。我无法提交、更新、查看存储库、切换分支等等。

我尝试过的确切命令:

> svn help svn: E720087: Can't convert string from native encoding to 'UTF-8': svn: E720087: help

这应该是非常基本的行为,只显示 svn 的帮助,而不需要浏览任何可能被破坏的存储库。 svn 对任何选项尝试给出完全相同的响应,用我尝试过的任何选项替换“帮助”。

我在 Windows cmd.exe 中使用默认的 Consolas 字体

我的系统在所有可用选项上始终处于 en-us

我尝试过重新启动、重新安装 TortoiseSVN、升级到最新的 TortoiseSVN、将命令从文本编辑器复制粘贴到 cmd 中。

我的系统最近唯一的更改是向

PATH

添加了一个条目(Windows 已使其基本上万无一失);以及安装 JetBrains Rider 的试用版。撤消

PATH
更改不会影响结果。
    

svn encoding command-line utf-8
1个回答
0
投票

我的问题的确切解决方案:

打开intl.cpl(区域控制面板项)
  • 切换到管理选项卡。
  • 在“非 Unicode 程序的当前语言”下,我列出了英语(美国)。
  • 单击更改系统区域设置。 在我的问题系统上,“区域设置”弹出窗口现在将南非荷兰语显示为当前系统区域设置 - 这是列表中最上面的条目,我从未使用过南非荷兰语,更改此设置对此下拉列表的状态没有影响。 在我的正常运行的系统上,“区域设置”弹出窗口按预期显示英语(美国)。
  • 在有问题的系统上,我将下拉菜单更改为英语,然后单击“Beta:使用 Unicde UFT-8 获得全球语言支持”选项,然后确定退出所有弹出窗口。
  • 这解决了我的 svn 问题,但我怀疑还有更多问题在起作用。如果我找出根本原因,我会更新。

© www.soinside.com 2019 - 2024. All rights reserved.