因为我想使用intellij提交git,我收到一条消息
You are about to commit CRLF line separators to the Git repository
我有两个选择:
git config --global core.autocrlf
)在我做其他事情之前,我想看看这些行分隔符的位置。
我怎么能用git或intellij做到这一点? (仅使用git的溶液是优选的)。
答案 0 :(得分:17)
您可以通过命令行使用git grep
来搜索包含Windows样式换行符的文件。
使用git bash,您可以通过以下命令找到包含\r
字符的所有文件(仅限bash!):
git grep -Il $'\r'
或者替代地(这应该适用于所有shell类型 - 除了windows类型):
git grep -Il '<CTRL + M>'
这实际上会在shell中显示为换行符,但只要将其换成引号就行了。
最后是Windows CLI(使用CMD和PowerShell测试):
git grep -Il "\r"
已使用的选项
-I
从匹配项中排除二进制文件-l
仅显示包含匹配项的文件名,而不是所有匹配项此外,如果您想限制搜索多个文件,可以使用--cached
选项,该选项只会搜索索引中的文件。
您可以阅读documentation了解详情。
答案 1 :(得分:0)
我刚刚做到了:
-修复并提交(运行 git config --global core.autocrlf)
在源代码文件中有两种表示行结尾的方法。
Git/编程标准通常更喜欢 LF。
单击 Fix and Commit 会将 Git 配置为始终在提交之前自动将行尾转换为 LF。
但是,我建议使用@Sascha Wolf 的答案,并尝试确定您的目标文件是否应该更改或保持原样。