一言で
コードを書くとき、ブランチの切り方とマージの仕方 は複数ある。本章で主要な流儀を見ていく。
どの流儀でも、マージするときは誰もが Pull Request を通す。その中身を解説し、これらは Ruleset で設定・強制できることも押さえる。
ブランチ戦略
PR を中心にブランチをどう構成するか。リリース頻度に合った方式を選ぶ。
| 戦略 | 仕組み | 向いているケース |
|---|---|---|
| 🌿 GitHub Flow | main 1 本 + 短命な feature ブランチ。PR → マージ → main からデプロイ | 継続的デリバリー・多くのチーム |
| 🌳 Git Flow | main + 長命な develop、加えて feature / release / hotfix | 定期・バージョン付きリリース |
💡 速度重視なら GitHub Flow を既定に。Git Flow はバージョン付きリリース時のみ。
GitHub Flow
長命なブランチは main 1 本、feature ブランチは短命。 main から枝を切り、PR を出してレビュー・マージし、そのままデプロイ。シンプルで速く、頻繁にデプロイする Web アプリや小規模チームに最適。
- 🌿 変更ごとに
mainから枝を切る(feature / fix) - 🔀 早めに PR を出す — レビューと CI はブランチ上で
- ✅
mainにマージ → 即デプロイ - ♻️
mainは常に デプロイ可能 に保つ
💡 部品が少ない=フィードバックが速い。継続的デリバリーの既定。
Git Flow
長命なブランチは main + develop の 2 本、加えて補助ブランチ。 作業は develop に統合し、release ブランチでバージョンを安定させてから main へマージしてタグ付け。定期的なバージョンリリースや大規模チーム向けの構造化フロー。
- 🌳
develop= 統合ライン・main= 本番(タグ付き) - 🧩
feature/*はdevelopから切って戻す - 📦
release/*で安定化 →main+developへマージし、バージョンを タグ - 🚑
hotfix/*はmainから切る緊急の本番修正 → 両方へマージ
🎯 手順は多いが制御は強い。継続デプロイではなく バージョンリリース を出すならこれ。
レビューの中身
今日、PR を開くのは 人間・Cloud Agent・Dependabot・Agentic Workflow と多様になった。差分の上に会話・チェック・自動分析が集まり、マージ前に品質を担保する場。
| 要素 | 役割 |
|---|---|
| 🔀 差分提案 | branch を比較してマージ依頼 |
| 💬 レビュー | 行単位コメント・承認/却下 |
| 🤖 Copilot コードレビュー | PR ごとに AI が自動レビュー |
| ✅ テスト / CI | status check の通過を必須に |
| 🛡️ Code Scanning(GHAS・Code Security) | CodeQL でセキュリティ脆弱性を検出 |
| 📊 Code Quality(独立プロダクト) | 保守性・信頼性を分析(GHAS とは別課金) |
🔑 PR で
Closes #123→ マージで Issue 自動クローズ。
Ruleset
Ruleset は、ブランチへのマージ条件を ルールとして強制 する品質ゲート。Organization レベルでも repository レベルでも設定でき、上位から横断適用もできる。
最小構成の推奨:
| ルール | 推奨設定 | 目的 |
|---|---|---|
| 🔀 Require a pull request before merging | ON + Required approvals: 1 | 直 push を禁止し、必ず 1 名以上のレビューを通す |
| 🛡️ Require status checks to pass | test を必須 + Require branches to be up to date before merging | CI が緑、かつ最新の main に対して検証されたときだけマージ |
| 🔍 Require code scanning results | CodeQL の結果を必須(重大度でブロック) | 未解決のセキュリティ脆弱性があるとマージを止める |
| 🔒 Block force pushes | ON | 履歴の破壊的な上書きを防ぐ |
| 🤖 Automatically request Copilot code review | ON | PR ごとに Copilot が自動で先行レビュー |
🎯 個別の手運用をやめ、Ruleset で「上から一括」ゲート。
★ AI 時代の PR
AI が PR を量産する今、「PR はもう要らない?」の声もある。だが repo を理解可能で安全に保つには、このゲートが必要。
- 🤖 Copilot が自動レビューで指摘を先回り
- 📈 2026 年は月 90M マージ (約 2x)
- 👀 人は最終承認、AI は下準備
💡 PR を守りつつ速くする = Ruleset × Copilot。