カテゴリー
コンピューター

【Git】Windows での開発時に改行コードを揃えるように設定し、既存コードに反映する方法

改行コードの Windows の Git のデフォルト設定での場合、CRLF でチェックアウトされます。

この状態ですと例えば CentOS のキックスタートファイルやシェルファイルで CR 部分が文字列として追加されてしまいます。

これによって、ファイルやディレクトリ作成時、意図しない名前となり、エラーとなってしまいました><。

今回、このエラーを回避した Git の操作テクニックを、2 つノートいたします♪

ポイント

  • .gitattributes でプロジェクトの改行コードを制御
  • 一旦ファイルを削除することによって、既存ファイルへ改行コード設定を反映

.gitattributes でプロジェクトの改行コードを制御

拡張子が cfg のキックスタートファイル、拡張子が sh のシェルファイルは改行コードを LF で固定し、他のファイルの扱いは自動制御 といたします。

そのような設定を書いたファイルを、プロジェクトのルートディレクトリに置きました。

* text=auto
*.sh text eol=lf
*.cfg text eol=lf

一旦ファイルを削除することによって、既存ファイルへ改行コード設定を反映

git reset --hard ではダメでした><。つまり、CRLF は LF へ置換されませんでした。

そのため、一度 .git ディレクトリ以外のファイル、フォルダをすべて削除してから git reset --hard と実行しましたら CRLF は LF へと変換されておりました♪

おわりに

git reset --hard しただけでは CRLF が LF へと変換されないのは驚きでした!

一律にリポジトリから取り出して上書きする、という仕組みではないのでしょうね♪

Git を Windows で使用する場合、かいぎょうこーどの問題がついてまわりますので、今回は大変勉強になりました!
最後に、参考ページです。ありがとう存じます!

また、次のページが Windows の Git でのかいぎょうこーどの扱いについて勉強になりそうですわ♪

以上です。

コメントを残す