【问题解决】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仓库
相关推荐
Predestination王瀞潞1 小时前
Git的安装及各步骤详解
git
m0_488633322 小时前
Windows环境下编译运行C语言程序,合适工具与方法很关键
c语言·windows·git·开发工具·编译器
春日见3 小时前
云服务器开发与SSH
运维·服务器·人工智能·windows·git·自动驾驶·ssh
蜡台5 小时前
Vue 中多项目的组件共用方案
前端·javascript·vue.js·git
剑飞的编程思维7 小时前
技术评审方法与流程全解析-如何做好技术评审
git·架构·个人开发·学习方法·技术美术·代码复审
OPMR7 小时前
【Git基础】从入门到入门——安装和远端链接
git
liu****8 小时前
5.git标签管理
c++·git·版本控制
新晨43710 小时前
Git跨分支文件恢复:如何将其他分支的内容安全拷贝到当前分支
前端·git
kishu_iOS&AI10 小时前
Git SSH + SourceTree篇
运维·git·ssh
Java小白,一起学习10 小时前
git提交格式(Conventional Commits 规范)
git