【问题解决】git status中文文件名乱码

问题复现

解决办法

在git bash中直接执行如下命令

bash 复制代码
git config --global core.quotepath false

原因

通过 git config --help 可以查看到以下内容:

core.quotePath

Commands that output paths (e.g. ls-files, diff), will quote "unusual" characters in the pathname by enclosing the pathname in double-quotes and escaping those characters with backslashes in the same way C escapes control characters (e.g. \t for TAB, \n for LF, \ for backslash) or bytes with values larger than 0x80 (e.g. octal \302\265 for "micro" in UTF-8). If this variable is set to false, bytes higher than 0x80 are not considered "unusual" any more. Double-quotes, backslash and control characters are always escaped regardless of the setting of this variable. A simple space character is not considered "unusual". Many commands can output pathnames completely verbatim using the -z option. The default value is true.

简单看就是默认core.quotepath值为true,git认为这些字符不寻常会将非英文的部分转换成8进制字符。设置core.quotepathtrue就不再转换。

git config 命令常见配置文件有三个作用域,配置生效优先级采用就近原则,即如果当前git仓库配置了某参数就不会到当前用户目录去找同样的配置项,系统目录亦然。

  • --system 作用于整个机器所有git仓库
  • --global 作用于当前用户所有git仓库
  • --local 作用于当前git仓库
相关推荐
那年窗外下的雪.10 小时前
AIDC 学习日志|第 14 天|MAC Flapping 与 EVPN 多归属分层排障
网络·git·学习·macos·github·spine
FlyWIHTSKY10 小时前
本地文件夹转化为 Git 仓库,并推送到远程平台创建一个全新的仓库
git
必须会一定会11 小时前
AI 编程隐私保护清单:API Key、代码上传、Agent 权限与 Git 历史排查
人工智能·git·ai编程
云计算磊哥@14 小时前
运维开发宝典061-CICD_版本控制器git
运维·git·运维开发
晨枫阳14 小时前
.gitignore 文件的真正含义
git
yu俞娥宝14 小时前
VS Code Git工作树:解锁多分支并行开发高效体验
git
小芒果_0114 小时前
git安装步骤
git
智塑未来15 小时前
企业服务器托管怎么选?多维评测标准与主流方案选型指南
服务器·git·github
Aurora_th1 天前
浙江海洋大学 资料共享 期末考试卷、课程资料等
git·github
奶茶树1 天前
【C++】13. C++11新特性【上】
c语言·开发语言·c++·git·github