【问题解决】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仓库
相关推荐
ganshenml40 分钟前
【GIT】Git 本地无法识别远程分支的原因与解决方法 not a valid ref
大数据·git·elasticsearch
lizz6661 小时前
在Git提交中,常见的提交类型(基于Angular提交规范,已被广泛采用)
git
涵涵(互关)1 小时前
git基础操作(按图一步一步来,有案例)
git
我是苹果,不是香蕉2 小时前
git remote报错解决办法
git
SHIPKING3933 小时前
【git命令操作指南】
git
LT_10293 小时前
如何初始化一个本地的项目到远程git仓库?
git·源代码管理
小付爱coding4 小时前
Claude Code安装教程【windows版本】
java·git·python
BIBI20494 小时前
Windows 下 Git 常规操作教程:命令行与 TortoiseGit
windows·git·tortoisegit·配置·版本控制·入门指南
The Straggling Crow7 小时前
熟练版本控制 (Git)、CI/CD 流程。
git·elasticsearch·ci/cd
海绵宝宝_10 小时前
Copilot 一键生成中文 Git Commit Message
git