git忽略行尾

git忽略行尾,git,line-endings,Git,Line Endings,我知道有人问过类似的问题,但我仍然无法让它起作用 我的项目在使用不同操作系统的人之间共享,我在OSX上。而且,还不是每个人都使用git,我有时不得不提交其他人的更改 有时候,git说会有悬而未决的更改。查看这些文件,它们看起来完全相同: @@ -1,6 +1,6 @@ -<Deployment xmlns="http://schemas.microsoft.com/client/2007/deployment" - xmlns:x="http://schemas.micros

我知道有人问过类似的问题,但我仍然无法让它起作用

我的项目在使用不同操作系统的人之间共享,我在OSX上。而且,还不是每个人都使用git,我有时不得不提交其他人的更改

有时候,git说会有悬而未决的更改。查看这些文件,它们看起来完全相同:

@@ -1,6 +1,6 @@
-<Deployment xmlns="http://schemas.microsoft.com/client/2007/deployment"
-        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
->
-    <Deployment.Parts>
-    </Deployment.Parts>
-</Deployment>
+<Deployment xmlns="http://schemas.microsoft.com/client/2007/deployment"
+        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
+>
+    <Deployment.Parts>
+    </Deployment.Parts>
+</Deployment>
和我的属性文件:

# Ignore all differences in line endings
*        -crlf

为什么它仍然向我显示文件已被修改?

请从JetBrains.com阅读此内容

要让Git自动解决这些问题,需要在Windows上将core.autocrlf属性设置为true,在Linux和OS X上将其设置为input。有关core.autocrlf属性含义的更多详细信息,请参阅本文。您可以通过运行来手动更改配置

git config --global core.autocrlf true 
在窗户上或

git config --global core.autocrlf input 
在Linux和OS X上。但是,IntelliJ IDEA可以分析您的配置,在您即将将CRLF提交到存储库时发出警告,并根据所使用的操作系统将core.autocrlf设置设置为true或input


希望这能对问题有所帮助。

如果取消设置core.filemode或将其设置为true,则输出是否不同?您还可以尝试禁用core.whitespace=fix,-带有非制表符的缩进、尾随空格、下线处的cr;其中一个问题是,我需要做什么才能应用这些更改?要取消设置filemode:请尝试git config core.filemode False抱歉,无意中发布了两次此答案:(因此,这将假定其他人也需要在他们的计算机上执行此操作。其中一个问题是,有时我通过其他方式获取Windows文件,然后从mac上提交。这是否也会平息
git diff
?这不适合我,但我是git新手,因此可能我没有正确执行此操作。此外,如果不应全局添加配置,只需运行
git config core.autocrlf true
resp.
git config--global core.autocrlf input
git config --global core.autocrlf input