husky & lint-staged について
プラグイン名 | 説明 |
---|---|
husky | git のコミットや push にフックして lint などを走らせるプラグイン |
lint-staged | lint を強制的に行って、エラーなどがあれば弾いてくれる。 |
husky
でcommit
を検知してlint-staged
でlint
を強制的に走らせ、エラーがあれば弾く
これで、バグになり得る元から排除できるよねーという試み。
husky & lint-staged 追加
$ yarn add -D husky lint-staged
husky の導入
$ npx husky-init && yarn
↑ これ実行でおわり
↓ 参考
Husky Git hooks made easy typicode.github.io
lint-staged の導入
package.json に追記
"lint-staged": { "*.{js,jsx,ts,tsx,json,md}": [ "eslint --fix './src/**/*.{js,ts,tsx}'", "prettier --write './src/**/*.{js,ts,tsx}'" ] }
これでyarn lint-staged
で実行されます。
.husky/pre-commit を修正
husky
の導入時に生成された .husky/pre-commit を下記に変更
#!/bin/sh . "$(dirname "$0")/_/husky.sh" yarn lint-staged
おわり
これで、git commit
時にeslint
とprettier
が実行されます