Gitflowブランチ命名戦略
feature、bugfix、hotfix、release、supportブランチに適切なブランチ命名でGitflowブランチモデルに従います。
Integration Patterns
詳細な説明
Gitflowのブランチ命名
Gitflowは、Vincent Driessenが定義した構造化されたブランチモデルで、特定のブランチプレフィックスとリリース管理のための定義されたワークフローを使用します。バージョン管理されたソフトウェアを提供するチームにとって、最も広く採用されているブランチ戦略の1つです。
Gitflowのブランチタイプ
| ブランチタイプ | プレフィックス | 分岐元 | マージ先 |
|---|---|---|---|
| Feature | feature/ |
develop |
develop |
| Bugfix | bugfix/ |
develop |
develop |
| Release | release/ |
develop |
main + develop |
| Hotfix | hotfix/ |
main |
main + develop |
| Support | support/ |
タグ付きコミット | N/A(長期ブランチ) |
長期ブランチ
Gitflowは2つの永続的なブランチを定義します:
main(またはmaster)— 常に本番準備完了状態を反映。mainへの各マージは新しいリリース。develop— 機能の統合ブランチ。次のリリースに向けて提供された最新の開発変更を常に反映。
タイプごとの命名例
feature/auth-123-implement-oauth2
feature/ui-456-redesign-dashboard
bugfix/bug-789-fix-email-validation
release/v2.3.0
release/v2.3.0-rc.1
hotfix/v2.3.1-fix-payment-crash
support/v1.x
Gitflowを使うべき場合
Gitflowは以下のプロジェクトに適しています:
- 定義されたリリーススケジュール(毎週、隔週、毎月)がある
- 複数のリリースバージョンを同時に維持する必要がある
- 開発コードと本番コードの厳格な分離が必要
- 専任のリリースマネージャーやQAフェーズがある
継続的デプロイ(mainへの各マージをデプロイ)を実践するチームには、短命なfeatureブランチを持つトランクベース開発がより適切かもしれません。ただし、Gitflowのfeature/、bugfix/、hotfix/プレフィックスは、完全なGitflowモデルの外でも広く使用されています。
Gitflow用のツール設定
このジェネレーターは、Branch TypeドロップダウンですべてのGitflowブランチタイプをサポートしています。チケットベースの命名にはテンプレートを{type}/{ticket}-{title}に、説明のみのブランチには{type}/{title}に設定します。releaseブランチは通常release/v{version}形式を使用します — チケットフィールドにバージョン番号を入力してください。
ユースケース
Gitflowを採用するチームが、機能開発からリリース準備、hotfixまでのワークフローの各段階でブランチにどのように名前を付けるかの明確なリファレンスが必要です。