この記事の概要
pre-commit時にBiomeのコマンドを走らせるとき、対象ファイルがないとエラーになり、コミットができません。
それを解消するための記事です。
状況
対象ファイルが無いというのは、例えば以下のような場合です
- チェック対象は.jsや.tsのファイル
- ライブラリのインストールだけをした
- 変更されたファイルはpackage.jsonとロックファイルだけ
このとき、デフォルトの挙動だとBiomeがエラーを吐き、コミットができません。
対象ファイルがないならないでコミットを実施したいです。
解消方法
--no-errors-on-unmatched
フラグを使います。
例えばLefthookを使っていて、以下のようになっているのを
lefthook.yml
pre-commit:
commands:
check:
glob: "*.{js,ts,jsx,tsx}"
run: npx @biomejs/biome check
このように変えるだけです。
lefthook.yml
pre-commit:
commands:
check:
glob: "*.{js,ts,jsx,tsx}"
- run: npx @biomejs/biome check
+ run: npx @biomejs/biome check --no-errors-on-unmatched
もちろん、他のオプション(例えば--staged
など)とも併用できます。
参考