アプリケーション開発ポータルサイト
ServerNote.NET
ServerNote.NET厳選キャンペーン・クーポンはこちら!
カテゴリー【Git/GitHubAndroidWindows
Windows GIT,Android Studioの意図しない改行コード変換(CRLF←→LF)を防ぐ
POSTED BY
2020-12-19

Gitにはチェックアウトおよびコミット時にテキストファイルの改行コードを自動で変換する機能がある。
この機能を行っているのは、$HOME/.gitconfigの

[core]
  autocrlf = true

という設定である。

git config --global core.autocrlf true

この設定でいると、チェックアウト時にはローカルにCRLFに変換して取り出され、
コミット時にはリモートリポジトリへLFに変換して送信される。

しかしながら自分がこんな設定をしたところで、リモートリポジトリの改行コードがLFでプロテクトされるわけではない。他の開発者がノー設定で普通にCRLFファイルをコミットしたらしまいである。

文字コードと改行コードのルールは共同作業ならプロジェクト発足時に取り決めておくべきで、このような自動変換は個人的にはわずらわしくLinuxでチェックアウトした時など混乱する。

よって自分は基本無変換推奨派。自動変換せずそのまんまがいい派。あと、Windowsのみで完結するプロジェクトだったら、別にCRLFのマスターリポジトリがあったって全然おかしくないと思う。

なので、

[core]
  autocrlf = false

git config --global core.autocrlf false

この機能を切って、Android Studioの
「Settings」→「Version Control」→「Git」の、
「Warn if CRLF line separators are about to be committed」
(改行コードがCRLFのファイルをコミットしようとしたら警告を出す)
のチェックを外す。

これでとりあえず、ありのままのテキストファイルで管理ができる。

※本記事は当サイト管理人の個人的な備忘録です。本記事の参照又は付随ソースコード利用後にいかなる損害が発生しても当サイト及び管理人は一切責任を負いません。
※本記事内容の無断転載を禁じます。
【webmaster/管理人】
自営業プログラマー
ご連絡は以下アドレスまで★

☆ServerNote.NETショッピング↓
ShoppingNote
☆お仲間ブログ↓
一人社長の不動産業務日誌
【キーワード検索】