見出し画像

わかりやすいコミットメッセージの書き方

会社ごとにルールがあるなーとは思ってたんですが、
個人開発をするにあたって気になったので、調べてみました。

そしたら、めちゃくちゃわかりやすくて感動した記事があったので、
メモとして書いておきます。

わかりやすいコミットメッセージ

コミットメッセージは、
以下の5つのパーツで構成すると良いらしいです。

【コミットメッセージ】
Type:コミットの種類
Scope:コミットの範囲
Subject:コミットの題名
【コミットメッセージの詳細】
Body:コミットの本文(記載なしでもOK)
Footer:コミットのフッター(記載なしでもOK)

コミットメッセージ例:

feat(item): add good and bad button

上記は、アプリケーションにおける
「商品(item)の新機能追加で、グッド/バッドボタンを追加した」
という内容になります。

Type

コミットの種類を書きます。
題名の冒頭に書きます。

コミットの種類には以下の種類があるらしいです。
自分でルールを作っても良さそうですが、以下をベースにするのが良さそうです。

feat: 新機能
 (The new feature you're adding to a particular application)
fix: バグ修正
 (A bug fix)
style: フォーマッティングやスタイルに関する修正
 (Feature and updates related to styling)
refactor: リファクタリング
 (Refactoring a specific section of the codebase)
test: テスト関連
 (Everything related to testing)
docs: ドキュメント関連
 (Everything related to documentation)
chore: 定期のコードメンテナンスなど
 (Regular code maintenance.[ You can also use emojis to represent commit types])

(引用元:How to Write Good Commit Messages: A Practical Git Guide)

これで、コミットの種類を明示します。

Scope

変更を加えたことによって、影響を受ける範囲を記載するみたいですが、
大抵は修正した機能名を記載するで良さそうです。

Subject

シンプルに何をしたかを書きます。
修正の端的な説明になります。

また、題名には句読点(ピリオドや丸など)はつけません。
英語で書く際は、命令形で書きます。(動詞スタートです。)
頭文字を大文字にするか、小文字にするかは人の好みのようです...

Body

本文には、どういった修正を行ったかと、
なぜその修正を行ったかを書きます。
(理由は明確に書きましょう、レビュー担当者が全て理解しているとか、自分のコードが明快だと思わないこととありました...そうですね......)

書く時は、最初に空行を入れること。
また、パラグラフの文頭は大文字にすること(英語の時だけですね)とありました。

Footer

コミットの修正で影響があるissueを参照します。
例えば#333のissue解決のためのバグ修正なら、

Resolves: #333

といった感じでかきます。


以下の記事を参考にしました。

https://hashnode.com/post/which-commit-message-convention-do-you-use-at-work-ck3e4jbdd00zyo4s1h7mc7e0g

この記事が気に入ったらサポートをしてみませんか?