おいちゃんと呼ばれています

ウェブ技術や日々考えたことなどを綴っていきます

Selected encoding mule-utf-8-unix disagrees with iso-2022-jp-unix specified by file contents.

Git と Emacs を使っているときに下記メッセージに遭遇したのでメモしておきます。

Selected encoding mule-utf-8-unix disagrees with iso-2022-jp-unix specified by file contents. Really save (else edit coding cookies and try again)? (yes or no) <<

*遭遇したタイミング

|| $ git commit -v ||<

してコミットメッセージを編集(エディタは Emacs)し、コミットメッセージを保存しようとしたときに遭遇しました。

*原因

コミットメッセージのファイル(xxx/.git/COMMIT_EDITMSG)の文字コードがどういうわけか「iso-2022-jp」になっていて、それを Emacs が「utf-8」で保存しようとしたので「待った」がかかったのだと思われます(エラーメッセージそのままなのですが)

ただ、どうして COMMIT_EDITMSG ファイルの文字コードが「iso-2022-jp」になっていたのかは未だに分かりません。

*対策

そのまま保存するのは抵抗があったので、いったん保存をキャンセルし、COMMIT_EDTMSG の文字コードを CotEditer で「utf-8」に変換しました。

それから改めて「git commit -v」するとうまくいきました。

*おわりに

以上です。エラーメッセージをそのまま検索ボックスに入れてググっても、欲しいページが見つからなかったので、後で同じメッセージに遭遇するどなたかのためにメモしてみました。その「どなたか」が自分かもしれませんが...

ではでは。

*関連エントリー

-Adobe Acrobat 8 のインストール時にエラー - エラー発生時にやっておくべきコト