1515
1616また、掲載している情報は予告なく変更することがございますので、あらかじめご了承下さい。
1717
18- ## はじめに
18+ # はじめに
1919
2020本ドキュメントはGitブランチ管理の標準的な運用ルールをまとめている。以下の想定で作成されているため留意いただきたい。
2121
2525
2626導入に際して行う、GitやGitHub/GitLabの環境設定は、[ 推奨設定] ( recommended_settings.md ) ページに記載している。
2727
28- ## ブランチ運用パターン
28+ # ブランチ運用パターン
2929
3030本ドキュメントで想定する各ブランチ役割については[ ブランチの整理] ( each_branch.md ) に記載する。
3131
4141| Lite GitLab Flow | ` main ` <br >` develop ` <br >` feature ` <br >` topic ` <br > ` hotfix ` | GitHub Flowに` develop ` ブランチを追加するパターン。(特定の呼称はないのでLite GitLab FLowと命名。)<br >` main ` ブランチをプロダクトリリースブランチとし、開発中ソースコードとは分ける。 | 低 | ・本番リリース済みプロダクトの開発などで、一定品質を保証する必要がある場合<br >・開発作業とリリース作業が並行しないチーム構成である場合 |
4242| GitLab Flow | ` main ` <br >` develop ` <br >` release ` <br >` feature ` <br >` topic ` <br > ` hotfix ` | GitHub Flowに` develop ` ブランチと` release ` ブランチを追加するパターン。<br >GitLab Flowでは` main ` ブランチを` production ` ブランチ、` release ` ブランチとを` pre production ` ブランチと呼称するが、本規約では` main ` /` release ` に統一する。 | 中 | ・リリース作業と開発作業が並行して行われる場合<br > ・断面を指定して複数テスト環境にデプロイしたい場合 |
4343
44- ### 変則的なパターン
44+ ## 変則的なパターン
4545
46- #### developブランチが複数作成する場合
46+ ### developブランチが複数作成する場合
4747
4848![ multi develop branch] ( img/branch_strategy_multi_develop.drawio.png )
4949
@@ -71,7 +71,7 @@ develop2のリリースは以下の手順で行う。
7171- 本番環境(=` develop ` )との差分を把握することができる
7272- より一般的な名称である ` develop ` ブランチのみ残るため、新規参画者フレンドリーである
7373
74- #### 過去バージョンをサポートする場合
74+ ### 過去バージョンをサポートする場合
7575
7676![ multi version branch] ( img/branch_strategy_multi_version.drawio.png )
7777
@@ -82,7 +82,7 @@ develop2のリリースは以下の手順で行う。
8282featureブランチのマージ後、マイナーバージョン(あるいはパッチバージョン)を上げたタグをコミットし、本番環境へリリースする。
8383※この例ではversion1とversion2が別リソースとして動いていることを前提としている。同一リソースで複数バージョンが稼働する場合はversion2のブランチで対応を行う必要がある。
8484
85- ## マージ戦略
85+ # マージ戦略
8686
8787マージ戦略とは、複数のブランチ間でコードの変更を統合する際に使用される方法やポリシーを指し、以下の事項に影響を与えます。
8888
@@ -100,7 +100,7 @@ featureブランチのマージ後、マイナーバージョン(あるいは
1001001 . 開発中の機能ブランチに対してメインの開発ブランチの変更をどう取り込むか
1011012 . メインの開発ブランチに開発およびレビューが完了した機能ブランチをどう取り込むか
102102
103- ### 1. 機能ブランチにメインの開発ブランチの変更を取り込む
103+ ## 1. 機能ブランチにメインの開発ブランチの変更を取り込む
104104
105105複数人により同時並行的に開発が進む場合、特定の機能ブランチで開発を進めている最中に、メインの開発ブランチがアップデートされることはよく起こる。
106106
@@ -148,7 +148,7 @@ featureブランチのマージ後、マイナーバージョン(あるいは
148148| AWS CodeCommit | 残る | 消える | 消える | 強制プッシュ関係なく、最新のコミットに対してのみレビューコメントが紐づく。そのため、新しいコミットをPushすると、過去につけたレビューコメントがファイル詳細から消えたように見える |
149149:::
150150
151- ### 2. メインの開発ブランチに機能ブランチの変更を取り込む
151+ ## 2. メインの開発ブランチに機能ブランチの変更を取り込む
152152
153153プルリクエストを経由して、開発が完了した機能ブランチをメインの開発ブランチに取り込むためには、GitHub(GitLab)上でプルリクエスト(マージリクエスト)を経由する運用を前提とする。
154154
@@ -184,11 +184,11 @@ https://zenn.dev/daku10/articles/github-merge-guardian
184184
185185[ ^ 1 ] : https://docs.github.com/ja/pull-requests/committing-changes-to-your-project/creating-and-editing-commits/creating-a-commit-with-multiple-authors
186186
187- ## ブランチ運用アンチパターン
187+ # ブランチ運用アンチパターン
188188
189189ブランチ運用でよく課題に上がるパターンとその対応を紹介する。
190190
191- ### 追い抜きリリース
191+ ## 追い抜きリリース
192192
193193以下のような状況とします。
194194
@@ -220,7 +220,7 @@ https://zenn.dev/daku10/articles/github-merge-guardian
220220
221221![ hotfixで追い抜き] ( img/release_overtaking_hotfix.drawio.png )
222222
223- ## コミットメッセージ
223+ # コミットメッセージ
224224
225225Gitのコミットメッセージは原則自由とする。理由は以下である。
226226
@@ -232,25 +232,25 @@ Gitのコミットメッセージは原則自由とする。理由は以下で
232232
233233- [ コミットメッセージ規約] ( commit_message_rule.md )
234234
235- ## ブランチ名
235+ # ブランチ名
236236
237- ブランチ名の命名規則は、[ ブランチの整理] ( each_branch.md ) に記載する 。
237+ ブランチ名の命名規則は、[ ブランチの整理] ( each_branch.md ) の記載内容に従うこと 。
238238
239- ## ラベル
239+ # ラベル
240240
241241TODO ラベルについて方針を追加する。(ラベルを利用することで、issue, プルリクエストを分類することができる。適切に設定することでリリースノート作成時に有用である。)
242242
243243https://docs.github.com/ja/issues/using-labels-and-milestones-to-track-work/managing-labels
244244
245- ## タグ
245+ # タグ
246246
247247Gitにはタグ機能があり、リリースポイントとしてタグを作成する運用とする。
248248
249249これにより、リリースしたアプリケーションやライブラリに何か不具合があれば、切り戻しや原因追求が容易になる利点がある。
250250
251251タグを利用するうえでの運用ルール・命名規則などは[ タグ規則] ( git_tag.md ) を参考にする。
252252
253- ## 参考1:ローカルでの作業例
253+ # 参考1:ローカルでの作業例
254254
255255gitコマンドでの作業例を記載する。リモートブランチへのプッシュは、` --force-with-lease --force-if-includes ` オプションを付けることを必須とする。
256256
@@ -271,6 +271,6 @@ git commit -a
271271git push origin HEAD --force-with-lease --force-if-includes
272272```
273273
274- ## 参考2: VS Code上でのGit操作
274+ # 参考2: VS Code上でのGit操作
275275
276276[ VSCode上でのGit操作] ( vscode_git_ope.md ) で、利用頻度が高いとされるGitクライアントである、VS Code上でのGit操作を紹介する。
0 commit comments