프로젝트
[eslint, prettier, git hook(husky v9)] 적용해보기
Jenner
2024. 2. 21. 01:28
eslint
eslint 설치
npx eslint --init
나에게 맞는 질문에 대한 답 선택
.eslintrc.json파일 내용이 추가됨
그 중 env에 한줄 추가하여
common js문법 사용할 수 있게 설정
"env": {
"browser": true,
"es2021": true,
"node": true
},
lint검사해보기
yarn run lint
에러가 나는데,
extends에 마지막 줄
"next/core-web-vitals"
추가해주기
"extends": [
"eslint:recommended",
"plugin:@typescript-eslint/recommended",
"plugin:react/recommended",
"prettier",
"next/core-web-vitals"
],
next/core-web-vitals는 next.js에서 제안하는 개발자 권장 사항.
이걸 설정해주지 않으면 아까의 에러가 난다.
prettier도 extends에 추가해주기
prettier
prettier 설치
yarn add -D prettier eslint-config-prettier
따로 설정해주지 않아도 바로 사용할 수 있음
깃훅 사용
husky 설치 (dev모드로 설치)
yarn add -D husky
package.json의 scripts에 명령어 추가
"prepare": "husky"
그러면
.husky 폴더가 생성
명령어 입력
.husky/pre-commit 파일 생성
yarn husky run .husky/pre-commit "yarn lint --fix"
그래도 안돼서
package.json파일에 아래 명령어 추가
"husky": {
"hooks": {
"pre-commit": "yarn run lint"
}
}
yarn install
명령어 실행
echo "yarn run lint" > .husky/pre-commit
그러면 커밋전에 아래와 같이 lint를 실행하게 됨
Release v9.0.1 · typicode/husky
Kicking off the year with an exciting update! TLDR; Improved user experience and a (even) smaller package size while packing in more features! Note: install using husky@latest to get the bug fi...
github.com