個人的なGitの運用ルール
はじめに
個人的な Git の運用ルールをまとめる。
個人ホームページ(ポートフォリオ)や小規模なサイトでの運用が前提。
※基本はチームの運用に基づく
ブランチモデル
代表的なもので「Git-flow」と「GitHub Flow」の 2 つがあるが、小規模で複雑な機能追加もないので「GitHub Flow」で運用。
例えば、機能追加やバグの修正があった場合は、
-
main ブランチから作業ブランチを切り作業する。
-
作業が終わったらプルリクエストを作成
-
コードレビュー
-
main ブランチへマージする。
-
ビルド&デプロイ
-
リモートとローカルの作業ブランチを削除
※Git-flow と GitHub Flow の違いはこちら ▼
https://supersoftware.jp/tech/20221021/17928/
Issue を立てる
機能追加やバグ、UI 等の改善時は Issue を立てる。
Issue を立てると固有 ID が発行されるので、ブランチ名、コミットメッセージに固有 ID を含めて Issue と関連づけ、トラッキングしやすくする。
ブランチ名
基本は下記2つで運用して、難しい場合は適宜考える。(Issue 番号をいれて関連づける)
-
feature(新機能開発)
例:feature/#8_add_menu
-
hotfix(バグ修正)
例:hotfix/#21_fix_bug
コミットメッセージ
Prefix(接頭辞)をつける
コミットメッセージには Prefix をつける。
Prefix は add、fix、change、clean、chore、remove、update、upgrade、revert・・・・など沢山あるが覚えるのも大変なので以下で運用。(Emoji はつけない)
- add(新規機能・ファイル追加)
- fix(バグやタイポの修正)
- refactor(リファクタリング)
- update(バグではない機能の改善、バージョンアップ等)
- rename(ファイル名の変更)
- remove(ファイルの削除)
- move(ファイルの移動)
理由を書く
変更した理由や目的を書いてレビューしやすくする。理由が書きにくいものもあるので、場合によっては書かなくても OK(基本は書く)
例:update: ◯◯ なため、△△ を追加する
例:add: 認証機能を実装する
Issue 番号を末尾につける
コミットメッセージの末尾に固有 ID を含めて Issue と関連づけておく。
例:update: ◯◯ なため、△△ を追加する #3
プルリクエスト
実施タスク(Issue 番号)、実施内容、レビューしてほしいこと、備考を入れる。
テンプレートを作成しておくと楽。
テンプレートの作成手順
- ルートディレクトリに.github フォルダを作成
- .github フォルダに PULL_REQUEST_TEMPLATE.md ファイルを作成
- 作成したファイルにテンプレートの内容を記述
## 実施タスク
例:issue #2
## 実施内容
- 例:ヘッダーの作成を行いました。
- 例:メインコンテンツの余白を調整しました。
## レビューしてほしいこと
- 例:デザイン通りに表示されること
- 例:PC・SP サイズで表示崩れがないこと
- 例:リンクの確認
## 備考
- 例:ハンバーガーメニュー開閉時のアニメーションについては、別 PR で実装します。
Discussion