windows vscode Delete `␍`eslintprettier/prettier 报错

问题根源
windows vscode Delete `␍`eslintprettier/prettier 报错_第1张图片

罪魁祸首是git的一个配置属性:core.autocrlf

由于历史原因,windows下和linux下的文本文件的换行符不一致。

Windows在换行的时候,同时使用了回车符CR(carriage-return character)和换行符LF(linefeed character)

而Mac和Linux系统,仅仅使用了换行符LF

老版本的Mac系统使用的是回车符CR

Windows Linux/Mac Old Mac(pre-OSX)
CRLF LF CR
‘\n\r’ ‘\n’ ‘\r’
因此,文本文件在不同系统下创建和使用时就会出现不兼容的问题。

项目仓库中默认是Linux环境下提交的代码,文件默认是以LF结尾的(工程化需要,统一标准)。

windows电脑git clone代码的时候,
如果我的autocrlf(在windows下安装git,该选项默认为true)为true,那么文件每行会被自动转成以CRLF结尾,
如果对文件不做任何修改,pre-commit执行eslint的时候就会提示你删除CR。

解决方案
如果是windows系统,文件编码是UTF-8且包含中文,最好全局将autocrlf设置为false。

命令行执行

git config --global core.autocrlf false
1
git全局配置之后,需要重新拉取代码。

推荐阅读
git core.autocrlf配置说明
Vue源码学习完整目录

你可能感兴趣的:(前端,windows,vscode,ide)