忘備録

日々の調べ物をまとめる。アウトプットする。基本自分用。

GitHub Flowについて

かなり雑なメモ

ワークフローのイメージ

f:id:mktktmr:20160126142622p:plain








???








何が言いたいかというと、やたらフォークなどはせずにリポジトリは一つ、作業ごとにブランチ切ってそれをmasterブランチにmergeしようって事

概要

  • masterブランチは常にデプロイ出来るように
  • 作業単位でブランチを切る(作業の粒度は?)
  • ブランチ名は作業内容がわかるように命名する
    • submodules-init-task
    • redis2-transition
    • user-content-cache-key
      ... so on
  • commitの粒度は細かく
    • fix typoならそれだけcommit
    • インデントの修正ならそれだけ修正
      上記作業を一緒にcommitしてはダメです
  • フィードバックやアドバイスを欲しい時もPullRequestする
    • PRはmasterへのマージだけが目的ではない
  • マージ後はすぐデプロイ

前提

  • デプロイは自動化
    • 手作業なんて時間の無駄
    • オペレーションミス発生
    • デプロイ中はロックするように
      → 開発スピードが上がると、デプロイする前に次のマージが発生するようになる
      → 不具合が発生した時に、どのデプロイが問題かがわからなくなる
  • テスト重視
    • テストコードがないものはmergeしない
    • テストは自動化

参考資料