2013年9月6日金曜日

Android StudioでGit(core.autocrlf)


Android Studioで作ったプロジェクトをコミットするときに出た、警告ダイアログの対処メモ。

環境

・Mac OS X 10.8.4
・Android Studio (I/O Preview) 0.2.6

原因

Android Studioのデフォルト設定では下記の
[Warn if CRLF line separators are about to be committed]
にチェックが入っている。
CRLFラインセパレータがコミットされようとしている場合に警告を表示するという設定。
core.autocrlfが未設定だったり、falseに設定されていると上記の警告ダイアログが表示される。

CRLFラインセパレータなファイルとはgradlew.bat。
gradlew.batをエディタで開いてステータスバーを確認すると確かにCRLFとある。
Windows環境で使うファイルですからね。

core.autocrlfとは

コミット時の改行コードの扱いを決めるもののようです。

こちらのサイトを参考にさせていただきました。
WindowsやMacなど様々なOSからGitを使うときの改行コードの扱い » tech-tec
http://tech-tec.com/archives/107

対処

冒頭のダイアログにもありますが
git config --global core.autocrlf input
の設定を行うと解決します。

コマンドラインから上記コマンドを実行して、コミットを行ってもよいですし
冒頭のダイアログで[Fix and Commit]ボタンをクリックすると自動でcore.autocrlfをinputに設定した後、コミットを行ってくれます。

core.autocrlfの設定確認

<User Home>/.gitconfigをテキストエディタで開く
or
ターミナルからgit config -l コマンドで確認できる。

1 件のコメント:

  1. 同様のエラーが出たので参考になりました。ありがとうございます。

    返信削除