Skip to content
Latchkey

フィーチャーブランチとは?

フィーチャーブランチは、単一の機能や修正をメインラインにマージできる状態になるまで、分離して構築するための専用ブランチです。

フィーチャーブランチは、ブランチ運用における日々の主役です。特定の作業のために 1 つ作成し、メインブランチを乱さずに開発し、レビューとテストを受けてからマージします。フィーチャーブランチを小さく短命に保つことが、スムーズなワークフローの鍵です。

フィーチャーブランチは何のためにあるか

フィーチャーブランチは 1 つの変更の作業を分離し、メインブランチが安定した状態を保てるようにします。実験したり、進行中の作業をコミットしたり、他の誰にも影響を与えずに反復したりできます。機能が完成して検証されると、通常はプルリクエストを通じてマージし戻されます。

フィーチャーブランチを作成する

説明的な名前でメインラインからブランチを切り、作業を行い、そしてマージします。

A feature branch and PR
git switch -c feature/dark-mode
# implement, commit, push
gh pr create --base main

健全に保つ

短命なフィーチャーブランチはきれいにマージされますが、長命なものは main から乖離してコンフリクトを生みます。マージまたはリベースを通じて最新の main を定期的に取り込むことで、フィーチャーブランチを現実に近く保ち、最終的なマージを苦痛のないものにします。

CI/CD におけるフィーチャーブランチ

CI はフィーチャーブランチへのすべてのプッシュとプルリクエストで実行され、変更が main に到達する前に高速なフィードバックを提供します。パイプラインはフィーチャーブランチでは処理を減らし、テストは行うがデプロイはしないことが多く、デプロイは main のために取っておきます。ブランチ保護は、チェックが通るまでフィーチャーブランチをマージできないようにします。

フィーチャーブランチのヒント

  • 論理的な変更ごとに 1 つのフィーチャーブランチを使います。
  • 乖離とコンフリクトを避けるため、ブランチは短命に保ちます。
  • マージまたはリベースで main と頻繁に同期します。
  • マージする前に CI にブランチを検証させます。

重要なポイント

  • フィーチャーブランチは 1 つの変更の作業を、準備が整うまで分離します。
  • 短命なブランチはきれいにマージされ、長命なものはコンフリクトを引き起こします。
  • CI は各フィーチャーブランチが main にマージされる前に検証します。

関連ガイド