이전에 github actions을 사용해서 간단하게 CI를 작성해봤다.
이번에는 husky로 로컬에서 commit 할 때 검사할만한 것들을 적용해보려고 한다.
적용할 것들은 다음과 같다.
바로 시작하자.
참고로 나는 패키지 매니저로 pnpm를 쓰고 있다.
husky 시작하기
pnpm add --save-dev husky # husky 내려받기
pnpm exec husky init # husky 기본 설정 자동으로 하기
package.json에 lint, format 명령어 만들기
"scripts": {
...
"lint": "next lint",
"format": "prettier --check --ignore-path .gitignore .",
}
pre-commit에 커밋 전에 실행할 명령어 작성하기
pnpm run lint
pnpm run format
pnpm audit
이제 commit을 하면 husky가 먼저 돌고 성공하면 commit을 하게 된다.
pre-commit 파일을 실행할 수 없는 오류가 나타났다.
나는 실행 권한 문제인가 했는데, 그냥 단순히 pre-commit 파일의 인코딩 문제였다.
관련 이슈) https://github.com/typicode/husky/issues/1426
해결 방법