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的安裝目錄
- 編輯
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引用路徑不再是八進制(反過來說就是允許顯示中文了)
- 編輯
etc\git-completion.bash文件,在文件末尾增加以下內容:
# 讓ls命令能夠正常顯示中文
alias ls='ls --show-control-chars --color=auto'
- 編輯
etc\inputrc文件,修改output-meta和convert-meta屬性值:
set output-meta on # bash可以正常輸入中文
set convert-meta off
- 編輯profile文件,在文件末尾添加如下內容:
export LESSHARESET=utf-8
2018-8-17
by 鐵樂與貓
【end】
