#概要
少人数のチームでGitHubを用いてプロダクト開発するときのブランチ運用フローについて.
GitHub Flowを参考にシンプルさと運用のしやすさを重視している.
チームの全員が6つのルールを守るだけで,masterが綺麗な状態で保たれる.
#6つのシンプルなルール
####1. master は本番環境にデプロイされているバージョン
####2. develop はテスト環境にデプロイされているバージョン
####3. feature ブランチ(作業ブランチ)は develop から分岐する
####4. feature ブランチは頻繁に push する
####5. pull-request(PR)で develop にマージする
####6. マージされた feature ブランチは削除する
#実際の作業例
###1. develop からある機能を実装する作業ブランチを作る
//developブランチにて
$ git branch hogehoge
$ git checkout hogehoge
###2. ローカルの作業ブランチで開発を進めつつ,頻繁にリモートの作業ブランチに push する
//hogehogeブランチにて
$ git push origin hogehoge
###3. ある程度実装できたらPRをdevelopに飛ばす
GitHubのウェブサイトでPull requestをdevelopに発行する
or
hubコマンドをインストールしていれば
//hogehogeブランチにて
$ hub pull-request -b develop
###4. PRが承認されてマージされれば作業ブランチを削除する
###5. 管理者がdevelopをテスト環境にデプロイする
###6. 管理者がdevelopを本番環境にデプロイする
###7. 管理者がmasterにdevelopをマージする
#追記:本番環境でバグが発生した場合の対処方法
###1. masterブランチからhotfixブランチを切る
###2. hotfixでバグを修正してmasterにPR -> コンフリクト修正 -> マージ -> デプロイ
###3. 完了したらhotfixをdevelopにPR -> コンフリクト修正 -> マージ -> デプロイ
###4. hotfixブランチを削除
#Happy Hacking !