Git提交忽略行尾

5

有没有办法让git commit忽略换行符?

我设法找到了如何让git diff忽略行尾的方法:

git diff --ignore-space-at-eol

通过这种方式,我让diff只显示我实际编辑过的行。

但问题是,git diff默认情况下认为我的整个文件都已改变,然后相应地提交了更改。

我还尝试过其他方法:

git config --system core.autocrlf true

git config --system core.autocrlf false

这些都无法解决我的问题!


如果你询问关于尾随空格的问题:我认为一般的建议是避免尾随空格。在编辑器中删除它。你可以设置一个 githook,如果有尾随空格则拒绝提交。另外,请查看以下 SO 问题链接:https://dev59.com/-WIk5IYBdhLWcg3wku5n,https://dev59.com/XHI-5IYBdhLWcg3w-9wK或https://dev59.com/LnRB5IYBdhLWcg3wiHz7#19355398。 - user707650
不,Evert,我在询问换行符的控制字符。我确实避免尾随空格。但还是谢谢你的评论。 - cnom
好的,这是我今天第二次回答相同的问题。请查看http://stackoverflow.com/questions/27155378/how-do-i-get-chef-cookbooks-to-be-downloaded-in-unix-format-on-windows/27168646#27168646 - user3159253
在特定的代码库中,有多种修复问题的方法,哪种方法更好取决于代码库的状态。 - user3159253
你尝试在 .gitattributes 文件中设置 * text=auto 吗?可以看一下这个链接:https://help.github.com/articles/dealing-with-line-endings/ - ZuoLi
显示剩余2条评论
1个回答

2

似乎没有办法使git commit默认忽略行尾符!!

只需注意合并工具!

我发现我的团队的行尾符设置完全正确,但是合并工具在合并分支时破坏了几个文件,从那时起我们就遇到了EOL的噩梦!!:)


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接