Git のワークフロー
一人での開発の場合、github flowを好み、複数人の開発では、git flowを好みます。
使用するブランチの役割
| ブランチ名 | 命名規則 | 説明 |
|---|---|---|
| Release | release | 現在本番環境にリリースされているブランチ |
| Master | master | 常時デプロイ可能なブランチ |
| Feature | feature/#IssueNumber-* | Masterブランチから生やしたブランチ。 各 issue,または epic 毎に作る |
| Topic | topic/* | Featureブランチから生やしたブランチ。Featureブランチにマージされる。 |
| Fix | fix/#IssueNumber-* | Masterブランチから生やしたブランチ。不具合対応のときに利用する。 issue番号を必ず残す |
| Hotfix | hotfix/#IssueNumber-* | Releaseブランチから生やしたブランチ。緊急対応のときに利用する。 issue番号を必ず残す |
通常の開発のブランチ管理の流れ
masterからfeatureブランチを切 るfeatureブランチまたはfeatureブランチの子ブランチ(topic ブランチ)で作業- 作業完了及びデバッグ完了したら親ブランチ(枝元のブランチ)にプルリクエストを出す
- コードレビューとデバックが終わったらマージ後、
featureブランチの削除をして、すぐにmasterに取り込む。 - プロジェクト管理をしている場合はチケットを本番反映済みにする
緊急バグ対応
masterからhotfixブランチを生やす。修正の規模が大きい場合はhotfixブランチからfeatureブランチを生やすfeatureブランチで作業完了及びデバッグ完了したらhotfixブランチにプルリクエストを出しレビュアーにマージしてもらうhotfixブランチをreleaseブランチにマージ。その後、releaseブランチをmasterブランチマージする。
基本原則
機能追加、バグフィックスなどは issue の番号と説明的な名前のブランチ名にして master から作成する
hotfixブランチの場合はhotfix/+issue の番号と説明的な名前のブランチ名で命名する- ブランチ名で複数の単語を使う場合は
-を使う
フィードバックや助言が欲しい時、ブランチをマージしてもよいと思ったときは、Pull Request を作成する
- フィードバックや助言が欲しい時、または作りかけの Pull Request には[WIP] をつける
issue テンプレート
要望テンプレート
Title: 新規提案。
Description:このプロジェクトに必要と思った内容の提案。
# 目的
# 実装案
# 備考```
### 不具合テンプレート
Title:不具合報告。
Description:不具合と感じ改善が必要と思ったものの報告。
[設定方法](https://docs.github.com/ja/github/building-a-strong-community/creating-a-pull-request-template-for-your-repository)```
# 概要
# 再現手順
# 修正しないとどう困るか
# 原因と思われる部分
# 修正案 / 理想と思われるの状況
# 備考
Pull Request テンプレート
<!-- あくまでテ ンプレートなので必ずしもすべての項目を埋めなくてよい -->
# 概要/対応issue
<!-- 変更の目的 もしくは 関連する Issue 番号 -->
# 変更内容
<!-- ビューの変更がある場合はスクショによる比較などがあるとわかりやすい -->
# 影響範囲
<!-- この関数を変更したのでこの機能にも影響がある、など -->
# 動作要件
<!-- 動作に必要な 環境変数 / 依存関係 / DBの更新 など -->
# 補足
<!-- レ ビューをする際に見てほしい点、ローカル環境で試す際の注意点、など -->