2

わかりました、このトピックに関するすべてのスレッドを読みました。私の理解は次のとおりです。

Windows で core.autocrlf = true を設定すると、git はコミットおよびプッシュ時にすべての crlf 行末を LF に変換する必要があります。

これは私が望むものであり、私は自分の設定をそのように設定しています。ただし、末尾が CRLF のテキスト ファイルをチェックインすると、次のエラー メッセージが表示されます。

fatal: LF would be replaced by CRLF

わかりません...コミットすると逆のことが起こるべきではありませんか?

4

1 に答える 1

3

メッセージは誤解を招きますが、理にかなっています。

  1. ファイルをチェックインすると、行末の正規化が行われます:CRLFは に置き換えられLFLFはそのまま保持されLFます。
  2. 後で、問題のファイルをチェックアウトします。これで、git は正規化を終了する行を「元に戻す」:LFに置き換えられCRLFます。

そのプロセスの最後にLF、作業ディレクトリ内のすべての が に置き換えられていCRLFます。それがgitがあなたに警告していることです。

: 使用はお勧めしませんcore.autocrlf。これは古い設定であり、置き換えられています。代わりに属性を使用してください。ここを参照してください: https://stackoverflow.com/a/13154031/758345

于 2013-03-15T17:19:44.680 に答える