如何让git更改工作目录中的行尾?

如何让git更改工作目录中的行尾?,git,Git,我在windows上用git config--global core.autocrlf false配置了git,这样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 y

我在windows上用git config--global core.autocrlf false配置了git,这样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.
因此,git将我的行尾从windows改为unix,此时windows-file.txt被添加到git索引中,这正是我想要的

我遇到的问题是工作目录版本没有更改,我如何配置git,使其同时更改工作目录和git索引的行尾

更新

在添加和提交之后,git状态不会显示任何差异,即使本地工作目录版本具有windows行结尾,而repo版本具有unix行结尾

更新回购协议根目录下.git属性的内容

#设置默认行为,以防用户没有设置core.autocrlf。
文本eol=lf
#这些文件是文本,应该规范化(convert crlf=>lf)
*.java文本
*.xml文本
*.cmd文本
*.sh文本
*.txt文本
*.md文本
*.js文本
*.jsp文本
*.html文本
*.htm文本
*.vm文本
.项目文本
.类路径文本
*.属性文本
*.txt文本
*.bat文本
*.启动文本
#表示所有真正为二进制且不应修改的文件。
*.png二进制文件
*.jpg二进制文件
*.jar二进制文件
*.class二进制文件
*.gz二进制文件
*.tar二进制文件
*.dll二进制文件
*.exe二进制文件
*.zip二进制文件

如果没有未提交的更改,请尝试:

git rm --cached -r . 
git reset --hard

删除本地文件并从索引中获取它们。

是否显示文件不同(即脏)?
git config--global
更改全局设置。每个存储库的本地设置可能仍然有效。
git config core.autocrlf
显示了什么?@mvp我熟悉本地的git per repo设置,但全局设置,因为我也使用了egit,它还不支持.gittributes。如果您有
.gittributes
,可以显示您的
。请参考此问题以强制文件使用lf: