都2024年了,要彻底告别 git status 乱码

背景

今天无意间把 git 的版本升级下,然后在某个仓库下执行命令 git status 发现输出了一大堆乱码,然后打开仓库所在的文件夹看看文件的名称发现是中文,以为是 git bash 工具界面设置的编码有问题,然后一看设置的是UTF-8,终端的编码设置没有问题,思索片刻决定去git官网看看文档,有没有解决方案。

原因

在git官网文档中找到这个属性core.quotePath,看看下图的介绍。

大概意思是:

输出路径的命令(例如ls-files、diff)将 在路径名中引用"不寻常"字符,方法是将 双引号中的路径名,并用 反斜杠与C转义控制字符的方式相同(例如, \t表示TAB,\n表示LF,\表示反斜杠)或带 大于0x 80的值(例如,八进制\302\265表示"micro", UTF-8)。 如果此变量设置为false, 0x 80不再被认为是"不寻常"的。双引号, 反斜杠和控制字符总是转义, 这个变量的设置。 一个简单的空格字符是 不被视为"不寻常"。 许多命令可以输出路径名 完全逐字使用-z选项。默认值 是true.

文档给出的方案是-z,通过-z选项的确可以输出正确的中文,但是执行命令输出的信息都在一行显示,太不友好了。

方法

看到这个属性文档最后一点说默认值是true,那么就关闭这个属性,把这个属性的值设置为false。命令行或者终端执行如下命令:

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

再次执行git status 查看输出的信息:

写在最后

通过本篇的文章可以学习到执行命令 git status 导致输出的乱码问题,喜欢的话帮忙点个赞 + 关注吧,将持续更新 git 相关的文章,谢谢浏览!

相关推荐
蜗牛攻城狮2 小时前
微前端四大方案选型对比与最佳实践:qiankun、micro-app、wujie、Module Federation
前端·微前端·qiankun·前端架构·micro-app·wujie
她说可以呀3 小时前
Vue插槽
前端·javascript·vue.js
qq_448011163 小时前
Vue + Jinja2两套模版与法冲突造成undefinedError
前端·javascript·vue.js
aixingpan3 小时前
aixingpan.cn API开发文档:前端查询夏令时和时区接口指南
前端·php
2601_958352904 小时前
23.5×19mm 换掉一整条音频链?|A-68 集成了什么:ADC / DAC / 24.576MHz 时钟 / AEC / 波束降噪,主控仅需 6 根线
前端·音视频·ai降噪·回声消除·语音模块
志尊宝4 小时前
AI原生前端开发(039):AI辅助的Nuxt 4全栈开发
前端·vue.js·ai-native
FRing035 小时前
JavaScript入门到精通三十二(深拷贝、浅拷贝、递归函数)
开发语言·前端·javascript
excel6 小时前
双 Token 与前端使用 Crypto 公私钥鉴权换 Token,哪种方案更好?
前端·后端
外收内放6 小时前
Python基础语法练习题(73)
java·前端·python
风骏时光牛马6 小时前
面向复杂场景的大模型应用落地与能力优化实践
前端