14

git config --global core.autocrlf falsegit が 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
4

1 に答える 1