Table of Contents

npmとhuskyを使ったGit pre-commitフックによるCI

  • Git pre-commitフックを使うと、コミット前にスクリプトを実行できます。これはテスト、リンター、その他のチェックを実行してコード品質を確保するのに役立ちます。npm huskyは、JavaScriptプロジェクトでGitフックを簡単に管理できる人気のツールです。

fnm経由でnpmをインストール

詳細はfnm - Fast and simple Node.js version managerを参照してください。

sudo apt install -y curl unzip

curl -fsSL https://fnm.vercel.app/install | bash

fnm --version

最新の安定版Node.jsをインストール:

# 最新の安定版Node.jsをインストール
fnm install --lts


# 使用する(現在のシェルセッションのみ)
fnm use --lts

# デフォルトに設定(すべてのシェルセッションのデフォルト)
fnm default lts-latest

# 確認
node --version
npm --version

プロジェクトのセットアップ

cd your-project

# npmプロジェクトを初期化
npm init -y

# huskyをインストール
npm install husky --save-dev

# huskyを初期化(.husky/pre-commitを作成し、prepareスクリプトを追加)
npx husky init

# .husky/pre-commitを編集してフックコマンドを追加
echo "npm test" >> .husky/pre-commit

また、package.jsonにテストスクリプトを手動で追加します:

"scripts": {
  "prepare": "husky",
  "test": "echo \"Running tests...\" && exit 0"
}

これで、変更をコミットしようとするたびに、pre-commitフックがコミットを許可する前にnpm testを実行します。npm testは、pre-commitチェックとして実行したい任意のコマンドに置き換えることができます。