旅するえんじにあ - Engineers to Travel -

旅するエンジニアの気まま備忘録

【git】git diff をすると改行に ^M が表示される

あるときgit diffでコードの差分を見ているとき 変更箇所の改行に「M」とついているのを発見した。

これは気持ち悪い。

最初に疑ったのはテキストエディタ

Sublime Text 2 を使っているのだけど、最近設定をいじった覚えはない。 ※ちなみに設定はLFになっている

規約通りにしているのになぜ。。。

調べた結果 前に 【git】aliasを使ってコマンドを短くする - 旅するえんじにあ - Engineers to travel - で記述した

[color]
         diff = auto
         status = auto
         branch = auto

ここのdiff = autoが悪さをしているとのこと。

対応策としてwhitespaceに行末のキャリッジリターンを許容すると解決できるようです。 ということで

コマンドからの場合は

git config --global core.whitespace cr-at-eol

設定ファイルを弄るのであれば

[core]
        whitespace = cr-at-eol

上記を追加すると表示されなくなる。