我在 Windows 上配置了git,git config --global core.autocrlf false
因此 git 不会在结帐时自动将文件从 LF 行结尾转换为 CRLF。
当我在 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 行结尾并且 repo 版本具有 unix 行结尾,git status 也不会显示任何差异。
更新回购根目录下 .gitattributes 的内容
# 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