2011-06-22 19 views
7

git config --global core.autocrlf inputgit autocrlf inputは改行を変換しますが、LFからCRLFに変換しますか?

に従ってthis github help pageこれはコミット時にすべての行末をLFに変換するようにgitを構成する必要があります。

しかし、私のレポにコミットするとき、これは私が得る出力です。

> git commit -am "test commit" 
warning: LF will be replaced by CRLF in .htaccess. 
The file will have its original line endings in your working directory. 
warning: LF will be replaced by CRLF in .htaccess. 
The file will have its original line endings in your working directory. 
[release/4.2 27bad5b] test commit 
warning: LF will be replaced by CRLF in .htaccess. 
The file will have its original line endings in your working directory. 
1 files changed, 1 insertions(+), 1 deletions(-) 

私はその後autocrlfオプションが正しく設定されたかどうかを確認するために私の設定をチェックし、それがでした。

> git config -l | grep "crlf" 
core.autocrlf=input 

なぜ私のLFがCRLFに変換されていると言っていますが、それ以外の方法ではありません。

なぜ3回苦情を言いますか?置き換えられる3回の出現が見つかったからでしょうか?なぜ、それは、その後、コミティッシュを出力した後、私に警告するのですか?

私は(:)レコードのとMac上で)混乱している

+0

(メモとして、githubのページにはWindows以外のタブでのみ "autocrlf = input"と書かれています...) – rogerdpack

答えて

13

行末に対処するとの長い時間の後、私は単純にVCSが私にそれらを変更するなど、任意のツールを許可しません。

私は現在、autocrlf falsecore.whitespace cr-at-eolを使用しています。これはdiff出力の厄介な^ Mを取り除きます。これはgitが行の最後やタブの直前など余分な空白のような不気味なことを示すためのものです。 。

+0

Adamのアドバイスが掲載されています。いくつかのファイル内に行末が混在しているレガシーイントラネットのコンテンツを使って大きなリポジトリを初期化するときにも同様の問題がありました(autocrlfを上回るもの)。 autocrlfをオフにすることは、ここで最も安全な方法です。 – Blackcoat

関連する問題