GitHub Flowを学ぶ

はじめに

こんにちは、良い技術ブログが書けるよう日々試行錯誤しているエヌです。

この記事では「GitHub Flowによる開発の仕方」についてを書いています。

Gitは非常に便利なツールですが、それを使ってより効率的な開発を行えるようにすることができます。

自分に向けた備忘録も目的ではありますが、「Gitは使ってるがもっと効率よく開発がしたい」や「GitHub Flowなんて初めて聞いた」な人の一助になれば嬉しいです。

GitHub Flowとは

平たくいえば、「Gitを使ってチームで効率よく開発を進めるための方法の1つ」です

Gitを使った開発の進め方(ブランチ戦略)にはGit-Flowなど他にもありますが、GitHub Flowの利点は何と言っても「ルールのシンプルさ」と「分かりやすさ」にあると思います。

Gitを初めて導入したというチームでも取り入れやすいブランチ戦略だと思います。

どうやって進めるのか(ルール)

基本的は下の3つのルールを守るだけです。

  • mainブランチには直接コミットなどしない(+ 常にリリース可能な状態に保つ)
  • 作業は、mainブランチからブランチを切って行う
    • これはよく「featureブランチ」と言われます
  • 作業が終わったらmainブランチにPull Requestする

下に開発フロー(イメージ)を載せます

GitHub Flowのメリット

  • ルールが少なくてシンプル
  • 分かりやすいためGitにあまり習熟してなくても導入しやすい

GitHub Flowのデメリット

  • リリースなどでmainにマージして欲しくない期間があったりすると、その期間マージが出来なくなるのでマージするときのコード量が大きくなりがち

おわりに

GitHub Flowによる開発の仕方」について、書いていきました。いかがだったでしょうか。

GitHub Flowは簡単に導入しやすいので、「Git導入したけどどうやって開発を進めよう」と考えている方は是非GitHub Flowを検討してみることをおすすめします。

さいごに、記事を書く上で参考にしたサイトのリンクを以下に掲載します。併せて読んでいただくと良いかと思います。

zenn.dev

www.atlassian.com