gulp 프로젝트에서 eslint를 사용할 때 이와 같은 오류가 발생
Expected linebreaks to be 'LF' but found 'CRLF' linebreak-style했으며 실행중인 gulp에 Windows 환경을 사용하고 있으며 전체 오류 로그는 다음과 같습니다.
Kiran (master *) Lesson 4 $ gulp
Using gulpfile c:\Users\Sai\Desktop\web-build-tools\4\
gulpfile.js
Starting 'styles'...
Finished 'styles' after 17 ms
Starting 'lint'...
'lint' errored after 1.14 s
ESLintError in plugin 'gulp-eslint'
sage: Expected linebreaks to be 'LF' but found 'CRLF'.
ails: fileName: c:\Users\Sai\Desktop\web-build-tools\4\js\extra.js
$>Users\Sai\Desktop\web-build-tools\4\js\extra.js
error Expected linebreaks to be 'LF' but found 'CRLF' linebreak-style
또한 실수를 나타내는 오류로 extra.js 파일을 포함 시켰습니다 .
function getWindowHeight() {
return window.innerHeight;
}
getWindowHeight();
답변
linebreak-style.eslintrc 또는 소스 코드에서 아래와 같이 규칙을 구성 했는지 확인하십시오 .
/*eslint linebreak-style: ["error", "unix"]*/
Windows에서 작업하고 있으므로이 규칙을 대신 사용할 수 있습니다.
/*eslint linebreak-style: ["error", "windows"]*/
다음의 문서 를 참조하십시오 linebreak-style:
모두 다른 편집자, VCS 응용 프로그램 및 운영 체제를 가진 많은 사람들과 함께 개발할 때 언급 된 것 중 하나에 의해 다른 줄 끝이 작성 될 수 있습니다 (특히 Windows와 Mac 버전의 SourceTree를 함께 사용할 때 발생할 수 있음).
Windows 운영 체제에서 사용되는 줄 바꿈 (새 줄)은 일반적으로 캐리지 리턴 (CR) 다음에 줄 바꿈 (LF)이되어 캐리지 리턴 줄 바꿈 (CRLF)이되고 Linux와 Unix는 단순 줄 바꿈 (LF)을 사용합니다. 해당 제어 순서는
"\n"(LF) 및"\r\n"(CRLF)입니다.
이것은 자동으로 수정 가능한 규칙입니다. --fix명령 행 의 옵션은이 규칙에 의해보고 된 문제를 자동으로 수정합니다.
그러나 CRLF코드에서 줄 끝 을 유지 하려면 (Windows에서 작업 할 때) fix옵션을 사용하지 마십시오 .
답변
이 답변에 따라 줄 바꿈 스타일을 사용하여 .eslintrc에서 파일을 무시하는 것이 유용하다는 것을 알았습니다 ( https://stackoverflow.com/a/43008668/1129108
module.exports = {
extends: 'google',
quotes: [2, 'single'],
globals: {
SwaggerEditor: false
},
env: {
browser: true
},
rules:{
"linebreak-style": 0
}
};
답변
vscode를 사용 중이고 Windows 를 사용하는 경우 창의 오른쪽 하단에있는 옵션 을 클릭하고 CRLF에서 LF로 설정하는 것이 좋습니다 . Windows에서 오류를 제거하기 위해 구성을 끄면 안됩니다.
LF / CLRF가 보이지 않으면 상태 표시 줄을 마우스 오른쪽 버튼으로 클릭하고 편집기 줄 끝을 선택하십시오.
답변
autocrlf.gitconfig 파일에서 param을 만들고 false코드를 복제했습니다. 효과가 있었다!
[core]
autocrlf = false
답변
내가 도망 갔기 때문에 나와 함께 일어 났고 git config core.autocrlf true나는 되돌아가는 것을 잊었다.
그 후 새 코드를 체크 아웃 / 풀하면 모든 LF (UNIX의 브레이크 라인)가 CRLF (Windows의 브레이크 라인)로 대체되었습니다.
린터를 실행했는데 모든 오류 메시지가 Expected linebreaks to be 'LF' but found 'CRLF'
문제를 해결하기 위해 autocrlf실행 git config --list | grep autocrlf하여 값을 확인 하고 다음을 얻었습니다.
core.autocrlf=true
core.autocrlf=false
전역 GIT 구성을 편집 ~/.gitconfig하고로 대체 autocrlf = true했습니다 autocrlf = false.
그 후, 나는 프로젝트에 가서 다음을 수행합니다 ( src/폴더 의 코드를 가정 ) :
CURRENT_BRANCH=$(git branch | grep \* | cut -d ' ' -f2);
rm -rf src/*
git checkout $CURRENT_BRANCH src/
답변
crlf (Windows Eol) 에서 원하는 경우 파일-> 환경 설정-> 설정으로 이동하십시오. 사용자 탭에서 “end of line”을 입력하고 파일 : Eol 이 \ r \ n으로 설정되어 있고 Prettier 확장을 사용하는 경우 Prettier : End of Line 이 crlf 로 설정되어 있는지 확인하십시오 .
마지막으로 eslintrc 파일에 다음 규칙을 추가하십시오.'linebreak-style': ['error', 'windows'] 
답변
vscode를 사용하는 경우 창 오른쪽 하단의 옵션을 클릭하고 CRLF에서 LF로 설정하는 것이 좋습니다.

