SourceTreeの内部diffでShift JISのファイルが文字化けしないようにする(Windows・Mac)

Git


なぜまだShift JISのHTMLファイルを扱っているのか、、と思うけど、やむなし。
それは良しとしても、SourceTreeで修正内容が文字化けしているのはだいぶ不便!
ということで、そんな時の解決法です。

「.gitattributes」ファイルの作成

Git用のローカルフォルダにある、「.git」フォルダと同じ階層に「.gitattributes」ファイルを作成し以下のように入力する。
これによって、Source Treeで差分を表示するときはShift JISを使うよう設定されます。
※対象のファイル形式がHTMLのみの場合は1行目だけでOK!

*.html diff=sjis
*.css diff=sjis
*.js diff=sjis

こんな感じですね↓。

「config」ファイルの編集

「.git」フォルダの下にある「config」ファイルをメモ帳などで開き、以下を追加する。
※一番下などに記述すると反映されないことがあるので、[branch “master”]のすぐ上に追加してください

[diff "sjis"]
	textconv = iconv -f sjis

これもこんな感じで↓。

これで完了です!
私の場合は、過去に作成したブランチのファイルは対象にならないことがありました。
もし同じようなことが起こった場合は、新規作成したブランチで確認してみてください。

コメント

タイトルとURLをコピーしました