Gitクイズ
Git フローにおける main ブランチと develop ブランチの役割として正しいものはどれか?
解説
Git フローでは、main ブランチと develop ブランチという2つの長期ブランチを中心にワークフローを組み立てます。それぞれの役割は明確に分かれています。main ブランチは、本番環境にリリース済みの安定したコードだけを保持するブランチです。ここに置かれるコードは「いつでもデプロイできる状態」であることが前提で、開発途中のコードが直接コミットされることはありません。リリースのたびにタグ(v1.0.0 など)を打って、どの時点のコードがどのバージョンとしてリリースされたかを記録するのが一般的です。develop ブランチは、次のリリースに向けた開発作業の統合先です。開発者は develop から feature ブランチを切って機能を実装し、完成したら develop にマージします。develop には複数の機能が集まってくるため、結合テストやレビューの起点にもなります。リリース準備が整ったら、develop から release ブランチを作成し、最終調整やバグ修正を行ったうえで main にマージします。このように main と develop を分離することで、「本番コードの安定性」と「開発のスピード」を両立させるのが Git フローの基本的な考え方です。選択肢1は main と develop の役割が逆になっています。選択肢3のように並行チーム用に分けるという考え方は Git フローの意図とは異なります。選択肢4のように main を最初だけ使うというルールも存在しません。