Skip to content

Instantly share code, notes, and snippets.

@kkato233
Last active November 20, 2018 18:54
Show Gist options
  • Save kkato233/2775eda33918dafac5be702077ca7ea3 to your computer and use it in GitHub Desktop.
Save kkato233/2775eda33918dafac5be702077ca7ea3 to your computer and use it in GitHub Desktop.
git で 日本語 SJIS UTF8 混在環境で きれいに表示する設定

ログ等で日本語ファイル名を表示する設定

git config --global core.quotepath false

変更履歴を SJIS UTF8 混在環境で表示する設定

nkf に パスを通す

native2ascii が jdk に含まれているので そこにもパスを設定する

Git のプロジェクトの先頭フォルダに

.gitattributes ファイルを作り

*.txt diff=text
*.properties diff=properties

を設定。

C:\Users\[ユーザ名]\git\.gitconfig ファイルに

[diff]
    tool = winmerge
[difftool "winmerge"]
    path = 'C:/Program Files/WinMerge/WinMergeU.exe'
    cmd = 'C:/Program Files/WinMerge/WinMergeU.exe' -r -u \"$LOCAL\" \"$REMOTE\"
[gui]
  	encoding = utf-8

を設定する。

git config --global diff.text.textconv "nkf -w8"
git config --global diff.properties.textconv "native2ascii -reverse -encoding UTF-8 "

これで、gitk や git のログ等で SJIS UTF8 混在であっても 日本語がきれいに表示されるようになる。

ソースの差分比較を WinMerge でできる。

git difftool --dir-diff
git difftool -d

nkf の入手先 ()

native2ascii の入手先 (JDK)

@kikudai
Copy link

kikudai commented Jun 9, 2017

propertiesの日本語表示、参考になりました。
すみませんが、一つ質問です。
WinMergeでもpropertiesファイルを綺麗に日本語表示するにはWinMergeプラグインなどを利用する感じでしょうか。
それともこの設定でWinMergeでもpropertiesファイルの日本語が綺麗に表示されてますでしょうか?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment