husky는
git hook에 따라서 원하는 동작을 하게 도와주는package이다.
git Hook
git add혹은git commitgit push가 시행 되기전, 후에 원하는 스크립트르 실행 시켜준다.
husky는 개발자가 eslint나 prettier같은 코드스타일을 강제하는 도구를 통해서도 잡아내지 못한 오류나 실수로 적용하지 못한채 올릴때 hook을통해서 커밋직전에 linting을 하는것을 도와준다
npx husky-init && yarnyarn add --dev husky설치후에는 .husky라는 폴더가 root에 생기는데
기존 package.json에 설정하던 내용이 앞으로는 여기에 추가된다.
그후, package.json에 추가한다
{
....,
"scripts": {
....
"prepare" : "husky install"
},
....
}
commit 전에 eslint를 확인하는 hook이다.
{
....,
"scripts": {
....
"lint-fix" : "eslint '**/*.{js}' --ext .js --fix"
},
....
}
그후 pre-commit 훅에 추가한다.
`npx husky add .husky/precommit 'yarn lint-fix'
.husky 디렉토리에 pre-commit파일이 생성된다.
아직 CI/CD단계까지 가지 않았지만 추후, CI/CD에는 lint는 필수이므로 husky를통한 hook관리로 commit전에 검사하는게 중요할거같다,