git status输出的文件路径的中文乱码问题
Posted lengye7
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了git status输出的文件路径的中文乱码问题相关的知识,希望对你有一定的参考价值。
在项目下输入git status之后,出现如下情况:
在线搜索了一下,发现是git添加了如下特性:
git参考文档:https://git-scm.com/docs/git-config
根据上面的文档得知,git对超过0x80的字符都会以八进制输出,由于中文以UTF-8保存,所以上面的文件路径输出了一堆的八进制转义代码,这对用户极其不友好。
文档给出的方案是-z,通过-z选项的确可以输出正确的中文,但是却缺少了详细信息:
所有的输出全在一行,对用户也不好友。
查阅git status命令文档可知:
该选项会以NUL为一行的几位,但是终端不能识别NUL结尾,所以终端不会自动换行。
那么最终的解决办法:关闭这个特性。
git config --global core.quotePath false
再次执行git status:
一切回归正常。
然后git add python添加所有修改过的文件:
默认情况下,git会将入库的文件的行尾符替换为LF,这是因为git原生的工作环境是linux/unix,而我目前工作环境是windows,所以这个也挺正常的。当下次在windows下检出分支的时候,会自动将LF替换为CRLF。
这个警告并不会带来什么问题,完全可以忽略。
以上是关于git status输出的文件路径的中文乱码问题的主要内容,如果未能解决你的问题,请参考以下文章