スコープ付きコミットのチェンジログ
feat(auth)やfix(ui)のようなスコープ付きConventional Commitsが、生成されたチェンジログで太字のスコーププレフィックス付きでレンダリングされる方法を学びます。
Grouping
詳細な説明
スコープ付きコミットの理解
Conventional Commitsにおいて、スコープは変更の影響範囲を絞る括弧付きのオプション識別子です。一般的なスコープにはモジュール名(auth、api、ui)、モノレポのパッケージ名、または機能領域(billing、search)があります。
スコープのレンダリング方法
ジェネレーターがfeat(auth): add OAuth2 loginのようなスコープ付きコミットに遭遇すると、次のようにレンダリングします:
- **auth:** add OAuth2 login
スコープは太字のプレフィックスになり、コードベースのどの部分が変更されたかを簡単にスキャンできます。feat: add dark modeのようなスコープなしのコミットはプレフィックスなしでレンダリングされます:
- add dark mode
スコープ付きとスコープなしの混在
単一セクション内で、スコープ付きとスコープなしのコミットが自然に共存します:
### Added
- **auth:** add OAuth2 login with Google
- **api:** implement rate limiting middleware
- add dark mode toggle to settings page
スコープの命名規約
ジェネレーターは任意のスコープ文字列を受け入れますが、一般的な規約には以下があります:
| 規約 | 例 | 説明 |
|---|---|---|
| モジュール名 | feat(auth): |
影響を受けるモジュールまたはパッケージ |
| レイヤー | fix(ui): |
アプリケーション層(ui、api、db) |
| 機能領域 | perf(search): |
ビジネスドメイン機能 |
| パッケージ | build(eslint): |
依存関係またはツール名 |
スコープの利点
スコープはチェンジログをスキャンしやすくします。認証の変更を探している読者は、すべての行を読む代わりに、すべてのセクションで太字の**auth:**プレフィックスをすばやくスキャンできます。
ユースケース
複数のモジュールやパッケージを持つ中〜大規模プロジェクトに不可欠です。スコープ付きコミットは、読者がチェンジログを心理的にフィルタリングし、自分の責任範囲に関連する変更を見つけるのに役立ちます。