【问题解决】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仓库
相关推荐
红豆子不相思1 小时前
Tomcat 环境搭建与集群实战
服务器·git·tomcat
杰哥技术分享2 小时前
Git 仓库迁移技术文档:从 CODING.net 迁移至腾讯云 CNB
git
梅孔立4 小时前
Ansible 100 台服务器一键管控实战 进阶版
服务器·git·ansible
qq_4260039615 小时前
git切换当前分支到远程分支
git
ON10N19 小时前
100% 纯 Vibe Coding,我是怎么用 AI 撸出一个 VS Code 插件的
git·ai编程·visual studio code
Lunar*1 天前
告别臃肿!使用 git-filter-repo 优雅清理 Git 历史记录
git
tq10861 天前
agent 记忆 = markdown + json + git
人工智能·git
何以不说话1 天前
DevOps、Git 和 GitLab
git·gitlab·devops
最最菜的菜鸟1 天前
本地环境通过 SSH 协议访问 GitHub 上的仓库时,SSH 公钥认证失败,配置 Git SSH 密钥
git·ssh·github
无限进步_2 天前
21. 合并两个有序链表 - 题解与详细分析
c语言·开发语言·数据结构·git·链表·github·visual studio