1. 程式人生 > >git diff獲取差異檔名顯示中文亂碼的解決辦法

git diff獲取差異檔名顯示中文亂碼的解決辦法



通過git diff命令對前後兩次commit版本進行差異化的對比,中文名的檔案顯示為亂碼。
git diff HEAD^ HEAD --name-only

  "pcsim/testcase/2018/01/\345\210\206\346\224\225\206\265\368\210\210\224\257\350.txt"
  "pcsim/testcase/2018/01/\345\210\206\346\224\257\346\265\213\350\257\225.txt"

git diff接受的編碼格式為utf-8,而檔名是以gb2312格式編寫的,所以git diff顯示了亂碼。

解決辦法有以下兩種:
1)執行以下命令,修改core.quotepath配置:
  git config --global core.quotepath false

  core.quotepath設為false的話,就不會對編碼大於0x80的字元進行quote。中文顯示正常。

2)通過vim編輯器,將檔名另存為utf-8格式。