关于统一换行符的问题,我们要用Git把好最后一道关。
趁午饭前说下,因为公司的开发环境都是windows,所以就会在IDEA里出现换行符为CRLF的问题。其实它本身没有问题,但是网上说,这个CRLF换行符放在Linux下,就会出现编译问题,因为Linux的换行符是LF。
Anyway,为了解决这个问题,
- 在提交Git之前,在本地Git Bash对话框里,输入以下两个全局一次生效的命令:
#提交时转换为LF,检出时不转换
git config --global core.autocrlf input
#拒绝提交包含混合换行符的文件
git config --global core.safecrlf true
这样就可以让Git来对提交代码换行符的检测,关好最后一道门。
- 同时在IDEA等IDE工具里将换行符设置成Linux的LF:

以后用Git提交代码的时候,就不会出现 fatal: CRLF would be replaced by LF 这样的错误了。
我们可以在Beyoud Compare工具里查看文件里的换行符,这里注意不要通过复制粘贴的方式贴到Beyoud里面,而通过打开java文件的方式查看换行符是否已经换成了LF.

同时在beyond Compare工具里,还可以更改换行符,如果有需要更新文件的换行符。

最后再安利Notepad++,它也可以做到更新目标文件的换行符来适应不同的操作系统。

其实说到底是公司没有买mac book...( ^皿^)っ
好了,虽然都是小事,但是代码规范从我做起,笔心!

网友评论