我的项目中有两个文件,git 告诉我确实有更改。当我单击更改时,差异显示“内容相同”。这是有道理的,因为我从未主动接触过这些文件。 其中一个文件是“yml”文件,另一个文件是“gradlew.bat”,这两个文件都是 CRLF。当我运行
git add .
时,它给了我这个错误
warning: in the working copy of 'file.yml', CRLF will be replaced by LF the next time Git touches it
我尝试过的:
我尝试恢复更改,但不起作用,文件仍然存在。
我还尝试过的是
git stash
和gitgit stash pop
。还有git stash apply
。两者都没有影响
我尝试手动删除文件,然后从存储库中提取。文件再次立即发生变化。
我尝试了
git reset --hard
和git clean -f -d
我在文件上尝试了
git rm --cached
并且git rm --cached -r .
我试过了
git update-index --refresh
我试过了
git config --global core.autocrlf false
git add --renormalize
给了我更多的文件,更多的 yaml,bat 和一个 java 文件发生了
我提交了文件并运行
git reset --soft HEAD~1
我转到origin/main并手动复制文件中的内容。没有影响
我提交了文件并将它们推送到远程存储库。这些更改消失了一秒钟,但在我从主目录中退出后,它们再次发生。之后我们也将其合并到 main 中,然后我的同事将其拉出,现在相同的两个文件出现了相同的错误,我们恢复了合并。 (所以很明显 git 接触过它但没有影响)
从存储库中提取的团队中的其他人(不是我错误的合并)没有问题。
我删除了存储库并再次克隆它。文件再次立即发生变化。
我从我的电脑上卸载了 intelliJ 和 Git。但这并没有帮助。
在 .gitattributes 中,这两种文件类型设置为
*.bat text eol=crlf
*.yml text eol=lf
可能是什么问题?