コミット前にhusky, lint-stagedでサニタイズするススメ
ESLint, TypeScript を使っているけれど、エラー、ワーニングが出たままコミットする事がままあります。勿論、そのまま開発を続けることもできますが、衛生上よくない気がし、husky, lint-staged を導入してみました。
チームで開発を行っている場合に一貫性を保つ、Lint エラーを放置したくない時に威力を発揮します。
導入の仕方
yarn add -D lint-staged@next husky
基本的な設定
package.json
"husky": {
"hooks": {
"pre-commit": "tsc && lint-staged" # typescriptのチェックが必要ない場合はlint-stagedのみ
}
},
"lint-staged": {
"*.{ts,tsx}": [ # jsの方は js,jsx
"eslint --fix",
"git add"
]
}
導入すると、ESLint と TypeScript のエラーが解決しない限りコミットできなくなってしまうので、大量にエラーがあるプロジェクトの場合は先に解決しておくのが吉です。
Happy Coding :)