git config --global core.autocrlf false
git が LF 行末から CRLF へのチェックアウト時にファイルを自動変換しないように構成された Windows で git を使用しています。
Windowsで新しいファイルを作成して追加すると、次の出力が得られます。
git add windows-file.txt
warning: CRLF will be replaced by LF in windows-file.txt.
The file will have its original line endings in your working directory.
そのため、Windows-file.txtが必要なgitインデックスに追加されているときに、gitは行末をwindowsからunixに変更しています。
私が抱えている問題は、作業ディレクトリのバージョンが変更されていないことです.作業ディレクトリとgitインデックスの両方の行末を変更するようにgitを設定するにはどうすればよいですか?
アップデート
ローカル作業ディレクトリ バージョンには Windows の行末があり、レポ バージョンには UNIX の行末がありますが、追加とコミットの後、git ステータスに違いはありません。
リポジトリのルートにある .gitattributes のUPDATEコンテンツ
# Set default behaviour, in case users don't have core.autocrlf set.
text eol=lf
# These files are text and should be normalized (convert crlf => lf)
*.java text
*.xml text
*.cmd text
*.sh text
*.txt text
*.md text
*.js text
*.jsp text
*.html text
*.htm text
*.vm text
.project text
.classpath text
*.properties text
*.txt text
*.bat text
*.launch text
# Denote all files that are truly binary and should not be modified.
*.png binary
*.jpg binary
*.jar binary
*.class binary
*.gz binary
*.tar binary
*.dll binary
*.exe binary
*.zip binary