git status 显示中文和解决中文乱码

git status 显示中文和解决中文乱码

解决git status不能显示中文

  • 现象

status查看有改动但未提交的文件时总只显示数字串,显示不出中文文件名,非常不方便。如下图:

  • 原因
    在默认设置下,中文文件名在工作区状态输出,中文名不能正确显示,而是显示为八进制的字符编码。

  • 解决办法
    将git 配置文件 core.quotepath项设置为false。
    quotepath表示引用路径
    加上--global表示全局配置

git bash 终端输入命令:

git config --global core.quotepath false

解决git bash 终端显示中文乱码

要注意的是,这样设置后,你的git bash终端也要设置成中文和utf-8编码。才能正确显示中文,例如对比如下:

在git bash的界面中右击空白处,弹出菜单,选择选项->文本->本地Locale,设置为zh_CN,而旁边的字符集选框选为UTF-8

英文显示则是:
Options->Text->Locale改为zh_CN,Character set改为UTF-8

如图:

通过修改配置文件来解决中文乱码

如果你的git bash终端没有菜单选项显示,还可以通过直接修改配置文件的方式来解决中文乱码问题。

进入git的安装目录

  1. 编辑etc\gitconfig文件,也有些windows系统是存放在C:\Users\Administrator\.gitconfig路径或安装盘符:\Git\mingw64\etc\gitconfig,在文件末尾增加以下内容:
[gui]  
    encoding = utf-8  
    # 代码库统一使用utf-8  
[i18n]  
    commitencoding = utf-8  
    # log编码  
[svn]  
    pathnameencoding = utf-8  
    # 支持中文路径  
[core]
	quotepath = false 
	# status引用路径不再是八进制(反过来说就是允许显示中文了)
  1. 编辑etc\git-completion.bash文件,在文件末尾增加以下内容:
# 让ls命令能够正常显示中文
alias ls='ls --show-control-chars --color=auto' 
  1. 编辑etc\inputrc文件,修改output-meta和convert-meta属性值:
set output-meta on  # bash可以正常输入中文  
set convert-meta off  
  1. 编辑profile文件,在文件末尾添加如下内容:
export LESSHARESET=utf-8

2018-8-17
by 铁乐与猫

2020-12-11 补充

还有一种情况出现乱码而且上面的方法解决不了的,就是你windows安装git bash的时候框选了字体,然后你系统中没有那个字体导致。这种情况下只能先卸载git bash,重装不要选字体。

当然区分这两种情况很简单,没有字体那种实际上敲ls命令查看的时候还是能看到中文的,但在git status的时候就会出现乱码。

【end】

  • 93
    点赞
  • 144
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 14
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 14
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

铁乐与猫

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值