メンテナンスタスク用のchoreコミット
Conventional Commitsでchoreタイプを使用するタイミングと方法。依存関係の更新、設定の変更、その他のメンテナンスタスクを解説します。
Scoped Commits
詳細な説明
choreタイプ
choreタイプは、ソースコードやテストファイルを変更しないメンテナンスタスクを対象としています。プロジェクトの運用を維持する変更のうち、機能、修正、ドキュメントに該当しないものすべてのキャッチオールです。
一般的なchoreコミット
chore: update dependencies to latest versions
chore(deps): bump lodash from 4.17.20 to 4.17.21
chore(ci): add Node.js 20 to test matrix
chore(release): prepare v2.1.0 release
chore: regenerate lock file
choreに含まれるもの
| タスク | タイプ |
|---|---|
| 依存関係の更新 | choreまたはchore(deps) |
| CI/CD設定 | chore(ci)またはci |
| ビルドスクリプトの変更 | choreまたはbuild |
| ライセンスファイルの更新 | chore |
| エディタ設定の変更 | chore |
| リリース準備 | chore(release) |
| Gitignoreの更新 | chore |
choreとbuildとciの違い
これらのタイプは重複します。Angularの規約はより具体的なタイプを提供します:
build:ビルドシステムの変更(webpack、rollup、npmスクリプト)。ci:CI設定の変更(GitHub Actions、Jenkins、CircleCI)。chore:その他すべて(deps、ライセンス、エディタ設定)。
3つのタイプすべてを使用する場合は一貫性を保ってください。シンプルさを好む場合は、choreですべてのメンテナンスタスクをカバーできます。
バージョンへの影響
choreコミットはバージョンバンプをトリガーしません。ほとんどの設定で変更ログから除外されます。これは意図的です — メンテナンスタスクはコントリビューターにとって重要ですが、コンシューマーには関係ありません。
依存関係更新の規約
依存関係の更新には、多くのプロジェクトがスコープ付き形式を使用します:
chore(deps): bump express from 4.18.0 to 4.19.0
chore(deps-dev): bump jest from 29.0.0 to 29.1.0
depsとdeps-devのスコープは、本番依存関係と開発依存関係を区別します。DependabotやRenovateなどの自動化ツールはこの形式でコミットを生成します。
ユースケース
アプリケーションの動作に影響しないあらゆるメンテナンス作業にchoreコミットを使用します:依存関係の更新、CIパイプラインの変更、エディタ設定の変更、ライセンスファイルの更新、リリースの準備。これによりコミット履歴が整理され、自動化ツールがメンテナンスノイズをフィルタリングできるようになります。