gloriaJun / til

Lessoned Learned
3 stars 0 forks source link

configure husky with yarn3 #124

Open gloriaJun opened 3 years ago

gloriaJun commented 3 years ago

Version

yarn v3.2.0 husky v8.0.1

Installation husky

yarn3를 사용하고 있으므로 husky doc > Usage > yarn 2에 작성된 가이드를 따라서 설치를 진행한다.

package.json에 해당 과정을 진행하기 전에 아래와 같은 설정을 추가해주었다.

private: true,

private 설정은 실수로 패키지가 publish가 되는 것을 예방해준다고 한다. 해당 프로젝트는 개인적이기도 하고, publish를 할 예정이 없기에 설정해주었다. 하지만, 배포 예정인 프로젝트라고 사전에는 true로 설정해두었다가 배포 시점에 수정하여 사용하는 것이 실수로 인한 배포를 예방할 수 있다고도 한다.

yarn add husky --dev

package.json에 아래의 스크립트를 추가해준다.

  #...SKIP
  "license": "MIT",
  "private": true,
  "scripts": {
    "postinstall": "husky install",
     #...SKIP

여기까지 진행한 뒤에 아래의 명령어를 수행한다.

yarn install

해당 명령이 정상적으로 수행이 되었다면, <project_root_dir>/.husky 폴더가 다음과 같은 구조로 생성이 된다.

.husky
└── _
    └── husky.sh

Create a hook

아래와 같이 명령어를 수행하여, pre-commit 스크립트를 추가한다.

npx husky add .husky/pre-commit "yarn lint-staged"

Examples....

yarn lint-staged

- `.husky/pre-push`
```bash
CI=true yarn run test

if do not work the husky, please execute chmod +x .husky/<hookname>

Reference