VSCode で Git 操作中に発生する lint-staged のエラーとその解決方法
はじめに
prettier などのリントツールと husky + lint-staged を組み合わせることで git commit
するタイミングで、 自動的に lint とコード整形を実現できます。
細かい設定は、以下のようなブログに任せます。
- Getting started - husky
- 【2023/09最新】husky + lint-staged でコミット前にlintを強制する方法 - zenn
- husky+lint-stagedでコミット時に自動でlintを動かす - ajike
husky のインストールが完了した状態で、以下のコマンドが実行すると
.husky/pre-commit
が作成されます。これで、コミットのタイミングで自動的に npx lint-staged
を実行できます。
しかし、Node.js を rtx を使ってバージョン管理している場合、VS Code からコードのコミットを実行するとエラーになり husky がうまく動作しません。
今回はそのエラーを解消します。
環境
バージョン | |
---|---|
Mac | Ventura 13.2.1 |
husky | 8.0.3 |
lint-staged | 13.1.2 |
事象
コミット
ボタンを押すと
以下のような Git: .husky/pre-commit: line 4: npx: command not found
という文字列が出ます。
冒頭でも表示したように .husky/pre-commit
は以下の通りです。
解決策
command -v
のコマンドを追記することで、解消します。