4
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

複数の開発本線が同時に走る場合のGit-flowをベースにした運用フロー

Posted at

はじめに

私が所属する開発チームでは、一つのリポジトリ内に複数製品が同居しており、それら製品の「企画→開発→リリース」の期間が同時期に並列して走る場合がある
その状況で運用しているフローを整理を兼ねて記す

概観

以下のように、Git-flowから_release_ブランチを除き、かつ**_develop_ブランチが複数ある**ような運用フローとなっている
Git-flowもどき.png

詳細

基本的なフロー

開発

  • マイルストーンごとに_develop_ブランチ(開発本線)を切る
  • 開発タスクごとに作業ブランチを切り、コードレビュー完了後、_develop_ブランチにマージする

検証開始・再開前

  • ビルド番号をインクリメントする
    • _develop_ブランチ上で直接コミットする
  • 検証時に**_develop_ブランチが_master_ブランチに後れを取っていないか**を確認し、ある場合は差分をマージする
    • 他の進行中の_develop_ブランチや、緊急リリース用の_hot fix_ブランチを確認し、それらをマージする

検証

  • _develop_ブランチの最新コミット上でビルドし、バイナリを検証チームに渡す

検証時の不具合対応

  • 既に存在する作業ブランチで追加修正する場合、以下を確認
    • 作業ブランチの分岐元コミットが古く、_develop_ブランチにマージする際コンフリクトが起きる懸念がある場合は、_develop_ブランチを作業ブランチにマージした後で作業する
  • 修正してコードレビュー完了後、_develop_ブランチにマージする
  • 「検証開始・再開前」の項に戻り、再度検証開始

検証完了後

  • _develop_ブランチを_master_ブランチにマージする
  • タグを打つ
  • 他に進行中の_develop_ブランチが存在する場合は、そのブランチにもマージする
  • 作業ブランチを削除する

例外的なフロー

緊急リリース対応

  • _master_から直接_hot fix_ブランチを切り、そのブランチ上でコードレビュー・検証を実施する
  • 検証完了後、_hot fix_ブランチを_master_ブランチにマージする
  • その後、進行中の_develop_ブランチが存在する場合は、そのブランチにもマージする

参考

4
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?