Blog Post

GitHub flow とは


作成日 2023-02-15

目次

概要

前回は は Gitflow について説明しました。 本記事では ブランチ戦略の一つ GitHub flow について紹介します。

GitHub flow とは

GitHub flow をできるだけ短く説明すると:

  • main ブランチからブランチを派生し、ある程度溜まったら main に向けてマージする手法です。

もっとシンプルに表現すると以下の通りです:

  • main から派生、main へマージ

至ってシンプルな運用です。

主ブランチ

まず主体となるブランチについてです。

GitHub flow では main が主体のブランチです。

運用方法として、 main ブランチから feature etc. ブランチを派生して、ある程度ユーザーに見せれる状態だと判断したときに main ブランチにリリースすると言うイメージです。
main にマージしたら、ローカルにプルし、ローカルの main を更新します。

基本上記が全てです。一応 (!)、それぞれのシナリオでどのようにするかについて説明します。

機能追加

main ブランチからブランチを派生して、十分実装したと判断した時に main にPR、マージ

リリース

特になし

Hot Fix

main ブランチからブランチを派生して、十分実装したと判断した時に main にPR、マージ

その他

fork に対する見解

fork するというお話もあるが、fork したからと言って GitHub flow ではないと思っています。
結局大事なのは main から派生、main へマージしたかです。
fork して、fork したレポジトリにマージしてから PR 出す流れを GitHub flow と名付けている記事も見かけますが、fork したレポジトリを介して間接的に PR を出しているだけで、ダイレクトに PR 送るのとさとそれほど意味は変わらないです。 参考までに 公式ドキュメントでは fork について記載していないです。

まとめ

以上が GitHub flow についてでした。 今後とも、参考にしていただけたらと思います。

参考文献