简 述: 将所有的软件和资料,全部从 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
是有毒), 然后再执行如上的两个步骤即可。即可成功
运行成功:
最后正确显示中文路径:

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