简 述: 将所有的软件和资料,全部从 Mac 迁移到 Win 的时候,发现了 git bash 出现了乱码,按照网上只有解决方案、但是没有原理解释的博文一通乱试,无果。于是决定自己自己弄清楚原理,在自己尝试去解决。

[TOC]


问题背景:

win10 2004 上使用 Git bash 2.28.0-64-bit, 显示中文乱码,都显示为数字。


解决方案:

执行如下,

git config --global core.quotepath false

作用是路径不以八进制显示(即是允许中文显示路径),此选项默认在 gitbash 是默认开启的。

详细参见 git doc


重启软件之后 ,若是出现如下古文形式的乱码,那么则是使用错误的编码规则读取导致;

原因是:文件名是以 utf-8 形式保存的,当时是以 gbk 的编码读取导致的。


再此如下进行设置:将本地字符集设置为 UTF-8 形式即可;


重启软件之后 ,一般都是会正确显示中文的。 若依旧还是显示这种古文码,且重启系统之后,依旧无效(没错,我就遇到了);果断卸载这个版本给的 git ,重新去官网下载一个新的版本(Git 2.28.0-64-bit 是有毒), 然后再执行如上的两个步骤即可。即可成功


运行成功:

最后正确显示中文路径:


补充:

对于本次乱码的详细历史,和解决方案,可以参考这篇: 乱码原因产生和解决方案