magitまわりの日本語文字化けに関しては emace magit 文字化け
とかでググると様々な対策方法が出ていて、どれがよいかよく分からない。実際色々な方法があるんだろうけど、個人的にはシンプルに以下の設定に落ち着いた。
(add-to-list 'process-coding-system-alist '("git" utf-8 . utf-8))
(add-hook 'git-commit-mode-hook
'(lambda ()
(set-buffer-file-coding-system 'utf-8)))
要するに、とにかくUTF-8に決めうち。これで、とりあえず日本語ログの入力と表示、日本語ファイル名の扱いは問題ない。問題があるのはUTF-8以外のファイルのdiffの表示だけど、UTF-8以外だとgithubで差分を見たときも文字化けするし、この際gitで管理するものは全部UTF-8にするってことで。
なお、上記はLinux環境の話です。MacやWindowsはまた違うと思うのであしからず。
(2014/12/15 追記)
と書いたけど、さらに調べてみるともっと簡単に下記の設定だけしておけば問題ないことに気づいた。
(prefer-coding-system 'utf-8)
(setq default-process-coding-system 'utf-8)
ポイントとして、coding system関連の設定は色々なパッケージ等のロード時に上書きされてしまうことが多いので、init.elの最後で行った方がよいようだ。