eslint报linebreak-style错误
从git服务器上down下来新的项目的时候,发现项目中的ESLint爆出了大量的错误。而且错误都是一样的错误的一个linebreak-style的错误。

原因:
这是由于不同平台之间,默认的换行符不同导致的问题。对于Mac 默认的换行符是\n,也就是LF方式。而对于Windows系统磨人的换行符是\r\n,也就是CRLF方式。
由于项目组主要用的都是Mac开发,而我自己用的Windows所以出现了ESLint报了这样一个错误。
解决思路:
首先换行方式在你通过git将项目文件下载下来之后就已经决定好了,因此我们首先要调整一下git的配置。
经过查询,发现git可以配置你下载和提交时对行尾符号的操作。
// 提交时验证
# 拒绝提交包含混合换行符的文件
git config --global core.safecrlf true
# 允许提交包含混合换行符的文件
git config --global core.safecrlf false
# 提交包含混合换行符的文件时给出警告
git config --global core.safecrlf warn
// 下拉提交时操作
# 提交时转换为LF,检出时转换为CRLF
git config --global core.autocrlf true
# 提交时转换为LF,检出时不转换
git config --global core.autocrlf input
# 提交检出均不转换
git config --global core.autocrlf false
通过以上命令我们可以很简单得出具体解决的方法,需要检查拒绝提交混合的换行符号文件。同时,提交时转换为LF,检出时不转换。
git config --global core.safecrlf true
git config --global core.autocrlf input
这样配置之后,项目原本的文件都不会在报这个错误了。但是还得注意你编辑器当中,如果你设置的行尾符号依然不一致,那么你新写的时候就会报错。因此,需要再把你的编辑器配置一下。
以VSCode为例:
在 文件->首选项->设置 当中搜索默认行尾字符,就能找到相应的配置。

选择和你项目相对应配置的行尾字符就可以了。
(其实我认为aotu应该也是可以的,没试过)
网友评论