
ブランチモデルって?
PJでどのようにGitを運用していくかの指針になる考え方のことです。
git-flowとGitHub Flowという二つの有名なブランチモデルがありますが、今回はgit-flowに基づいた考え方をまとめます。
各ブランチの運用方法
masterブランチ
★必須
・完全な品質を保証する
・特定のブランチからマージすることによってしか更新されない(品質が保証されたバージョンのdevelopブランチからマージする)
・直接コミットしてはならないという制約をもつ
・適切に運用されていれば、masterブランチから最新の安定版がいつでも取得できる
developブランチ
★必須
・開発中のコミットが行われる主軸
・feature/bugfixブランチはここから派生
・軽微な修正のみ、直接コミットしてよい
featureブランチ
★必須
ブランチ名ex)feature/○○/○○
・中〜大規模な機能追加・改修などを行う作業ブランチ
・やるぞー!ってなったらdevelopブランチから、featureブランチを切る
・機能ごとにブランチを用意することで、並行して機能を開発できる
・完了後はdevelopブランチにマージして、featureブランチは削除する
bugfixブランチ
ブランチ名ex)bugfix/○○/○○
・developブランチでバグが発覚した際に、修正を行うブランチ
・featureブランチのバグ修正版と思えばよい
・完了後はdevelopブランチにマージして、bugfixブランチは削除する
hotfixブランチ
ブランチ名ex)hotfix/○○/○○
・masterブランチでバグが発生した際に、修正を行うブランチ
・masterブランチから派生
・一番切りたくないけれども、切るべきときはさっさと切らなければいけないブランチ
・修正が無事完了したら、masterブランチとdevelopブランチにマージして削除する
ブランチイメージ図

★Point
常にmaster/developブランチは存在させておき、feature/bugfix/hotfixブランチは必要に応じて、作成、削除を行う。
★★こまめにブランチ整理を行うが吉◎
・masterブランチ 品質が安定したバージョン
・developブランチ masterブランチに品質は劣るが、最も開発が進んだバージョン
是非Git運用の参考にしてみてください!!
参考
https://havelog.ayumusato.com/develop/git/e513-git_branch_model.html