From 28761c7ce707dca24f9c2cbf8577ce01d6e0548d Mon Sep 17 00:00:00 2001 From: ma91n Date: Sun, 11 Aug 2024 02:40:09 +0900 Subject: [PATCH] fix git flow standards --- .../forGitBranch/git_branch_standards.md | 115 +++++++++--------- .../img/branch_strategy_hotfix.drawio.png | Bin 39579 -> 24731 bytes 2 files changed, 58 insertions(+), 57 deletions(-) diff --git a/documents/forGitBranch/git_branch_standards.md b/documents/forGitBranch/git_branch_standards.md index 8ae019bf..9500826e 100644 --- a/documents/forGitBranch/git_branch_standards.md +++ b/documents/forGitBranch/git_branch_standards.md @@ -17,7 +17,7 @@ meta: # はじめに -本ドキュメントはGitブランチ管理の標準的な運用ルールをまとめている。以下の想定で作成されているため留意すること。 +本規約はGitブランチ管理の標準的な運用ルールをまとめている。以下の想定で作成されているため留意すること。 - GitHub / GitLab の利用 - トランクベース開発(フィーチャーフラグ)を **採用しない** @@ -25,7 +25,7 @@ meta: # 基本方針 -一般的なGitブランチ運用のプラクティスに従い、本ドキュメントも以下の方針に則る。 +一般的なGitブランチ運用のプラクティスに従い、本規約も以下の方針に則る。 - すべての機能開発や不具合修正に、機能ブランチを使用する - プルリクエストを経由して機能ブランチの修正内容をマージする @@ -33,20 +33,22 @@ meta: # ブランチの種類 -本ドキュメントで想定する、ブランチの種類とその役割を説明する。 +本規約で想定する、ブランチの種類とその役割を説明する。 -| ブランチ名称 | 役割 | ライフサイクル | 派生元ブランチ | 命名規則 | 直プッシュ可否 | -|-----------|--------------------------------|---------|--------------|---------------------------------------------------------------|---------| -| `main` | プロダクション環境と一致させるブランチ | 永続的 | - | `main`: 変更しない | ✕ | -| `feature` | 特定機能の追加/変更 | 短命 | `main`/`develop` | `feature/${任意名称}`: 詳細はfeatureブランチの章に記載する | △ | -| `develop` | 開発の大元となるブランチ | 永続的 | `main` | `develop`: 変更しない。複数のdevelopブランチが発生した場合は `develop2` と連番で区別する | ✕ | -| `release` | リリース準備作業の実施 | 短命 | `develop` | `release/${yyyymmdd}` や `release/${リリースバージョン}` など | ✕ | -| `hotfix` | mainブランチに対する即時修正 | 短命 | `main` | `hotfix/${任意名称}`: featureブランチに準じる | ◯ | -| `topic` | featureブランチにて複数人開発をする場合のブランチ | 短命 | `feature` | `topic/${任意名称}`: featureブランチに準じる | ◯ | +| ブランチ名称 | 役割 | ライフサイクル | 派生元ブランチ | 命名規則 | 直プッシュ可否 | +|-----------|------------------------------|---------|------------------|---------------------------------------------------|---------| +| `main` | プロダクション環境と一致させるブランチ | 永続的 | - | `main` 固定 | ✕ | +| `feature` | 特定機能の追加/変更 | 短命 | `main`/`develop` | `feature/${任意名称}`: 詳細は「featureブランチ」節を参照 | △ | +| `develop` | 開発の大元となるブランチ | 永続的 | `main` | `develop` 固定。複数必要な場合は `develop2` と連番で区別する | ✕ | +| `release` | リリース準備作業の実施 | 短命 | `develop` | `release/${yyyymmdd}` や `release/${リリースバージョン}` など | ✕ | +| `hotfix` | mainブランチに対する即時修正 | 短命 | `main` | `hotfix/${任意名称}`: featureブランチに準じる | ◯ | +| `topic` | featureブランチにて複数人開発をする場合のブランチ | 短命 | `feature` | `topic/${任意名称}`: featureブランチに準じる | ◯ | ## mainブランチ -Gitリポジトリを新規作成するとデフォルトで作成されるブランチで、過去はmasterだったがmainに改名された経緯を持つ。 +Gitリポジトリを新規作成するとデフォルトで作成されるブランチ。masterからmainに改名された経緯を持つ[^3]。 + +[^3]: https://github.com/github/renaming ## featureブランチ @@ -84,8 +86,7 @@ fixtypo リリースするために使用するブランチで、主な特徴は以下である。 -- リリース前の検証を開発と並行して実施する場合に発生する -- 開発とリリース作業が並行しないのであればdevelopブランチでそのまま検証を実施すれば良いので、場合によっては不要となる +- リリース前の検証を開発と並行して実施する場合に利用する - releaseブランチではバグ修正、ドキュメント生成、その他のリリースに伴うタスクのみを実施する - masterブランチのマージコミットにリリースタグを打ち、mainブランチをdevelopブランチへマージ後、releaseブランチを削除する @@ -96,7 +97,7 @@ fixtypo 本番リリースに対して迅速にパッチを当てて修正する場合に使用するブランチで、主な特徴は以下である。 - 修正が完了するとmainとdevelopの両方(あるいは進行中のreleaseブランチ)にマージされる -- mainブランチとdevelopブランチが分かれている場合はほぼ必須で発生する。mainブランチ+featureブランチのみの運用では必須ではない(管理上の目的でfeatureとhotfixを分けることはあり得る)。 +- main/developブランチがあると必要になる可能性がある。main/featureブランチのみの運用では必須ではない(管理上の目的でfeatureとhotfixを分けることはあり得る) ![hotfix branch](img/branch_strategy_hotfix.drawio.png) @@ -122,11 +123,11 @@ featureブランチで実現する機能を複数人で開発する場合に使 - GitHub Flow → Lite GitLab Flow → GitLab Flow -| 名称 | 利用ブランチ | 概要 | 運用コスト | 使い所 | -| ---------------- | ------------------------------------------| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------- | ---------------------------------------------------------------------------------------------------- | -| GitHub Flow | `main`
`feature` | 最小のブランチ管理パターンで、開発人数が少なく、検証作業は全員で行う場合に有効。
マージの都度本番環境へデプロイする前提。 | 低 | ・個人開発
・プロジェクト初期フェーズで断面管理を厳密に行わない場合 | -| Lite GitLab Flow | `main`
`develop`
`feature`
`topic`
`hotfix` | GitHub Flowに`develop`ブランチを追加するパターン。(特定の呼称はないのでLite GitLab FLowと命名。)
`main`ブランチをプロダクトリリースブランチとし、開発中ソースコードとは分ける。 | 低 | ・本番リリース済みプロダクトの開発などで、一定品質を保証する必要がある場合
・開発作業とリリース作業が並行しないチーム構成である場合 | -| GitLab Flow | `main`
`develop`
`release`
`feature`
`topic`
`hotfix` | GitHub Flowに`develop`ブランチと`release`ブランチを追加するパターン。
GitLab Flowでは`main`ブランチを`production`ブランチ、`release`ブランチとを`pre production`ブランチと呼称するが、本規約では`main`/`release`に統一する。 | 中 | ・リリース作業と開発作業が並行して行われる場合
・断面を指定して複数テスト環境にデプロイしたい場合 | +| 名称 | 利用ブランチ | 備考 | 運用コスト | 使い所 | +|------------------|-------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------|-------|-----------------------------------------------------------------------| +| GitHub Flow | `main`
`feature` | 最小のブランチ管理パターンで、開発人数が少なく、検証作業は全員で行う場合に有効。
マージ毎にプロダクション環境へデプロイする。 | 低 | ・個人開発
・プロジェクト初期フェーズで断面管理を厳密に行わない場合 | +| Lite GitLab Flow | `main`
`develop`
`feature`
`topic`
`hotfix` | GitHub Flowに`develop`ブランチを追加するパターン(特定の呼称はなくLite GitLab FLowと命名)。
`main`ブランチをリリースブランチとし、開発ソースコードとは分ける。 | 低 | ・稼働済みのプロダクトなど、一定品質を保証する必要がある場合
・開発作業とリリース作業が並行しないチーム構成である場合 | +| GitLab Flow | `main`
`develop`
`release`
`feature`
`topic`
`hotfix` | GitLab Flowでは`main`ブランチを`production`ブランチ、`release`ブランチとを`pre production`ブランチと呼称するが、本規約では`main`/`release` とする。 | 中 | ・リリース作業と開発作業が並行して行われる場合
・断面を指定して複数テスト環境にデプロイしたい場合 | ## 変則的なパターン @@ -138,7 +139,7 @@ featureブランチで実現する機能を複数人で開発する場合に使 上記の例では日々のエンハンスとは別に数カ月後に大型リリースがある場合を想定する。 あるタイミングで大きく機能が変わる場合にエンハンス用開発ブランチ(`develop`)とは別の開発ブランチ(`develop2`)を作成する。(featureフラグでの対応も考えられるが、本記事でブランチで対応する場合を想定する。) このパターンではそれぞれのdevelopブランチに対しては独立してfeatureブランチで機能開発が行われるが、`develop`から`develop2`への同期に注意する必要がある。 -`develop`の変更にはバグフィックスや軽微なUI向上が含まれる想定であり、これらの変更は日次あるいは週次の比較的高頻度で本番環境へリリースされる。 +`develop`の変更にはバグフィックスや軽微なUI向上が含まれる想定であり、これらの変更は日次あるいは週次の比較的高頻度でプロダクション環境へリリースされる。 当然、`develop2`はこれらの変更を加味して大型リリース向け開発を進める必要があるので、`develop`のmainブランチ反映されるたびに`develop`から`develop2`への同期を行う必要がある。 `develop`から`develop2`への同期は以下の様に行う。 @@ -155,7 +156,7 @@ develop2のリリースは以下の手順で行う。 `develop`から`develop2`へマージ後、`develop2`を`main`ブランチに反映させる手順も考えられるが、`develop2`から`develop`へのマージとすると以下のメリットがある。 -- 本番環境(=`develop`)との差分を把握することができる +- プロダクション環境(=`develop`)との差分を把握することができる - より一般的な名称である `develop` ブランチのみ残るため、新規参画者フレンドリーである ### 過去バージョンをサポートする場合 @@ -166,23 +167,22 @@ develop2のリリースは以下の手順で行う。 インターフェースの大型改善や、仕様変更を受けてversion1からversion2へupdateを行った場合を想定する。 メインの更新はversion2(mainブランチ)に対して行っていくが、version1の利用ユーザーが存在する場合、バグfixやセキュリティアップデートを並行して行うことが考えられる。 そういった場合はversion1を示すブランチ(`support/v1`)を別途作成、そのブランチからfeatureブランチを作成してfixを行う。 -featureブランチのマージ後、マイナーバージョン(あるいはパッチバージョン)を上げたタグをコミットし、本番環境へリリースする。 +featureブランチのマージ後、マイナーバージョン(あるいはパッチバージョン)を上げたタグをコミットし、プロダクション環境へリリースする。 ※この例ではversion1とversion2が別リソースとして動いていることを前提としている。同一リソースで複数バージョンが稼働する場合はversion2のブランチで対応を行う必要がある。 # マージ戦略の選定 マージ戦略とは、複数のブランチ間で生じた変更の取り込み方針を指す。 -具体的には「マージコミット」「リベース」「スカッシュマージ」を次の3ケースで選択する。 +具体的には次の3ケースそれぞれで「マージコミット」「リベース」「スカッシュマージ」のどれを採用するか判断する。 1. 開発ブランチから機能ブランチへ変更を取り込む 2. 機能ブランチから開発ブランチへ変更を取り込む -3. 永続ブランチ同士 +3. 永続ブランチ間で変更を取り込む -次の事項に影響を与えるため、Gitの使用を開始する前に決めることが重要である。 +以下に影響を与えるため、Gitの利用開始前に決めチームで統制を図ることが重要である。 - プロジェクトのコミット履歴の管理 -- コンフリクトの解決 - 開発プロセスの円滑な進行 - 最終的なソフトウェア品質 @@ -196,26 +196,25 @@ featureブランチのマージ後、マイナーバージョン(あるいは 理由は次の通り。 -- マージを選択すると、そのたびにマージコミットが作成され履歴が複雑になり、レビューアの負荷が高まるため -- スカッシュマージはこのケースでは選択できないため -- コンフリクトリスクは、マージ・リベース問わず発生するもので、リベースの選択による悪影響は存在しないため +- マージコミットが作成されると履歴が複雑になり、レビューアの負荷が高まる +- スカッシュマージはこのケースでは選択できない +- コンフリクトリスクは、マージ・リベース問わず発生するもので、リベースの選択による悪影響は存在しない + +この選択にあたり、以下の設定を行う。 + +1. `git pull` 時の挙動がリベースになるよう `git config pull.rebase true` を実行する +2. 開発ブランチの変更を取り込む場合、同じコンフリクトの解消を何度も求められることを解消するため、`git config rerere.enabled true` を実行する -マージによる変更の取り込みが既存のブランチを変更しないのに対し、リベースは全く新しい(元のコミットIDとは別のコミットIDで)コミットを作成するため、次の4点に注意すること。 +マージによる変更の取り込みが既存のブランチを変更しないのに対し、リベースは全く新しい(元のコミットIDとは別のコミットIDで)コミットを作成するため、次の1点に注意すること。 -1. 開発者は `git pull` 時の挙動をリベースにするよう設定する(`git config pull.rebase true`)。 -2. 複数人に影響を及ぼすpublicなブランチでは、決してリベースを使用しないこと - - 永続ブランチである `develop` や `main` ブランチが該当する - - リベースにより新しいコミットが作成されるため、他の人が作業しているブランチと整合性が取れなくなり、大きな混乱を招く可能性がある。永続ブランチは **強制プッシュできないよう保護しておく** -3. リモートにプッシュ済のブランチでリベースを行った場合、強制プッシュ(Force Push)が必要になること - - 開発者はプッシュ時に `--force-with-lease --force-if-includes` フラグを渡すことで、意図せずリモートブランチの変更を上書きしないようにする - - `--force-with-lease`: ローカルのリモート追跡ブランチの ref とリモートの ref を比較し、ローカルの状態が最新でない場合(要はプッシュ先のリモートブランチに変更が入ったが、ローカルで `git fetch` していない場合)は、プッシュに失敗する。逆にいうと、プッシュ前に `git fetch` を実行済みの場合は、リモートの変更を上書きする形で強制プッシュができてしまうため、これを防ぐには `--force-if-includes` フラグを併用する +1. リモートにプッシュ済のブランチがあり、開発ブランチからさらに変更をリベースで取り込んだ場合、強制プッシュ(Force Push)が必要になる + - `git push origin HEAD --force-with-lease --force-if-includes` とすることで、意図せずリモートブランチの変更を上書きしないようにする + - `--force-with-lease`: ローカルのリモート追跡ブランチの ref とリモートの ref を比較し、ローカルの状態が最新でない場合(プッシュ先のリモートブランチに変更が入ったが、ローカルで `git fetch` していない場合)は、プッシュに失敗する。逆にいうと、プッシュ前に `git fetch` を実行済みの場合は、リモートの変更を上書きする形で強制プッシュができてしまうため、これを防ぐには `--force-if-includes` フラグを併用する - `--force-if-includes`: リモート追跡ブランチの変更がローカルに全て取り込まれていない場合は、プッシュに失敗する。これにより意図せず他の人のコミットを上書きすることを防ぎつつ、必要な変更を強制的にプッシュすることができる -4. メインの開発ブランチの変更を頻繁に取り込む場合、同じようなコンフリクトの解消を何度も行う必要があること - - GitのRerereを有効化する(`git config rerere.enabled true`)ことでコンフリクトの解消を記録し、自動化できる ::: tip -強制プッシュすることにより、レビューコメントが消えてしまわないかという懸念を聞くことがある。2024年7月に実施した調査では強制プッシュ運用による支障は無いという結果だった。 +強制プッシュすることにより、レビューコメントが消えてしまわないかという懸念を聞くことがある。2024年7月に実施した調査結果では強制プッシュ運用による支障はなかった。 - 「a.履歴保持」: 強制プッシュを行い、GitHub投稿したレビューコメントが履歴として何かしらのページで取得できるかどうか。GitHubではConversationタブで確認 - 「b.行単位の紐づけ(該当行の変更なし)」: レビューコメントが付けられた行とは別の変更を行い、強制プッシュしたときにレビューコメントの紐づけが残るかどうか。GitHubではFile chagedタブで確認 @@ -242,20 +241,23 @@ featureブランチのマージ後、マイナーバージョン(あるいは - 開発ブランチの履歴をクリーンに保てるため - PRをよりシンプルに保つインセンティブとしたいため(単一のコミットメッセージで表現できる程度の方がレビューコストも小さいため) -「スカッシュマージ」による変更の取り込みを行う場合、次の4点に注意すること。 +「スカッシュマージ」を行うと、変更元の機能ブランチのコミットをまとめたコミットが新たに作成されるめ、元の機能ブランチを再利用しPRを作成するとコンフリクトが発生する。そのためマージ後はリモート/ローカルの双方で速やかに機能ブランチを削除させるため、以下の設定を加える。 + +- マージ後に機能ブランチを自動削除する設定 + - リモート側: GitHubでは「Automatically delete head branches」を選択することで、マージ後に自動でブランチの削除が行われる(GitLabではプロジェクト設定で「Enable "Delete source branch" option by default」を選択する) + - ローカル側: `git config --global fetch.prune true`: リモート側で削除されたブランチをローカル側でも削除する + +「スカッシュマージ」による変更の取り込みを行う場合、次の2点に注意すること。 -1. マージ後は機能ブランチを削除する - - 変更元の機能ブランチのコミットをまとめたコミットが新たに作成されるめ、元の機能ブランチを再利用しPRを作成するとコンフリクトが発生する。そのためマージ後はリモート/ローカルの双方で速やかに機能ブランチを削除することが望ましい - - リモート側の機能ブランチはGitHubの設定にて「Automatically delete head branches」を選択することで、マージ後に自動でブランチの削除が行われる。(GitLabでは、マージリクエストから「Delete source branch」オプションを有効にすることで、マージ後に自動でブランチの削除が行われる。プロジェクトの設定で「Enable "Delete source branch" option by default」を選択しておくとデフォルトで有効になる。) - - ローカル側の機能ブランチは `branch -d` ではなく、`branch -D` コマンドを用いて削除する必要がある。 -2. 部分的なコミットの取り消しができない +1. 部分的なコミットの取り消しができない - 履歴上は1つのコミットになるため、マージ後に一部の変更だけの取り消しが不可能。そのためPRをなるべく小さなまとまりにする -3. Authorが失われる - - 機能ブランチにコミットを行った人がAuthorになるのではなく、「スカッシュマージ」を行った人がAuthorになる。OSS開発を行う場合など、厳密にコントリビューションを管理する必要がある場合は注意する。GitHubでは「スカッシュマージ」を行う場合、デフォルトでコミットメッセージに `co-authored-by` トレーラーが追加され、1つのコミットが複数の作成者に帰属するようにするようになっている[^2]。この記述は削除しないようにする +2. Authorが失われる + - 機能ブランチにコミットを行った人がAuthorになるのではなく、「スカッシュマージ」を行った人がAuthorになる。OSS開発を行う場合など、厳密にコントリビューションを管理する必要がある場合は注意する + - GitHubでは「スカッシュマージ」を行う場合、デフォルトでコミットメッセージに `co-authored-by` トレーラーが追加され、1つのコミットが複数の作成者に帰属するようにするようになっている[^2]。この記述は削除しないようにする [^2]: https://docs.github.com/ja/pull-requests/committing-changes-to-your-project/creating-and-editing-commits/creating-a-commit-with-multiple-authors -## 3. 永続ブランチ同士で変更を取り込む +## 3. 永続ブランチ間で変更を取り込む 永続ブランチ同士の変更を取り込むケースとして、`develop` ブランチを `main` ブランチや `release`ブランチにマージするといった場合がある。 @@ -273,7 +275,7 @@ featureブランチのマージ後、マイナーバージョン(あるいは - 先にissue-312がdevelopにマージされ、その後に着手されたissue-394がマージされた - 以下のような条件があるため、issue-394分を先にリリースしたい - issue-312のリリースは業務上の合意が得られていない(エンドユーザ操作に影響があるため、事前告知した日時でリリースしたいなど) - - issue-394は不具合修正であり業務課題として目につくため、なるべく早くリリースして解消したい + - issue-394は不具合修正であり業務上の優先度が高いため、なるべく早くリリースしたい ![同一ファイルを複数](img/release_overtaking.drawio.png) @@ -282,16 +284,15 @@ featureブランチのマージ後、マイナーバージョン(あるいは 1. issue-312をリバートする 2. issue-394のコミットのみをcherry pick してmainブランチにマージする -1のリバートはGitHubの機能で提供されていることもあり簡単に行えるが、手戻りであることは間違いないし、コミットの履歴が汚れるため、保守運用の視点ではマイナスである。2のcherry pickは操作、管理とも煩雑でミスが出やすいという課題がある。 +1のリバートはGitHubの機能で提供されていることもあり簡単に行えるが、手戻りであることは間違いないし、コミットの履歴が汚れるため、保守運用の視点ではマイナスである。2のcherry pickは操作、管理ともに煩雑でミスが出やすいという課題がある。 -処方箋だが、前提条件に応じて複数の対応策が考えられる。 +処方箋だが、前提条件によって別の対応策が考えられる。 -1. issue-312のマージがおかしかったケース +1. issue-312のマージがおかしいとするケース - 本来想定していたリリーススケジュールから見て、issue-312がdevelopにマージされている状態が正しくないのであれば、issue-312はdevelopにマージせず待機しておくべきだった - 誤ってissue-312をマージしてしまったことが原因であれば、リバートを行うことが正しい -2. issue-394のマージがおかしかったケース +2. issue-394のマージがおかしいとするケース - 本来想定していたリリーススケジュールを破って、issue-394を優先してリリースしたいというのであれば、`feature` ではなく `hotfix` ブランチで対応すべきであった -3. developマージ後、デプロイメント環境へのリリース間隔が数時間~1日など短い場合は、フィーチャーフラグでデプロイとリリースを区別するべきであった 2の例を以下に図示する @@ -358,7 +359,7 @@ git push origin HEAD --force-with-lease --force-if-includes # 推奨設定 -GitやGitHubb/GitLabの推奨設定をまとめる。本ドキュメントにあるGitブランチ運用はこの設定が行われている前提で説明する箇所がある。 +GitやGitHubb/GitLabの推奨設定をまとめる。本規約にあるGitブランチ運用は、以下の設定が行われている前提で説明している箇所がある。 ## git config推奨設定 diff --git a/documents/forGitBranch/img/branch_strategy_hotfix.drawio.png b/documents/forGitBranch/img/branch_strategy_hotfix.drawio.png index 15571d69cfaf2cfadd73231b3dec1019d7a08205..37b4cccbe319858d83c401bed4cf0974d3ab67cb 100644 GIT binary patch literal 24731 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