❓ Git Flowとは?
Git Flowは、チーム開発やプロジェクト管理のために考案されたブランチ戦略です。
明確な役割を持つブランチを使い分け、開発・テスト・リリースの流れを整理します。
考案者は Vincent Driessen 氏(2010年)です。
🌿 ブランチ構成
- main:本番リリース済みの履歴
- develop:次のリリースに向けた開発用
- feature/●●:新機能の開発用
- release/●●:リリース準備用
- hotfix/●●:本番の緊急修正
🛠️ 運用の流れ
① 新機能の開発
git switch develop
git checkout -b feature/awesome-feature
② 機能完成 → develop にマージ
git switch develop
git merge feature/awesome-feature
git branch -d feature/awesome-feature
③ リリース準備
git checkout -b release/1.0 develop
④ 本番リリース
git switch main
git merge release/1.0
git tag -a v1.0 -m "Release 1.0"
⑤ release → develop にも統合
git switch develop
git merge release/1.0
git branch -d release/1.0
⑥ 緊急修正(hotfix)
git switch main
git checkout -b hotfix/urgent-bug
# 修正後
git commit -am "Fix critical bug"
git switch main
git merge hotfix/urgent-bug
git switch develop
git merge hotfix/urgent-bug
git branch -d hotfix/urgent-bug
🧰 Git Flowを補助するツール
- CLI拡張:
git flowコマンド(Homebrewなどで導入可) - GUI:Sourcetree・GitKrakenなどはGit Flowに対応
- GitHub Flow:よりシンプルな代替フローも存在
小規模や個人開発には GitHub Flow もおすすめです。