開発において無くてはならないものになりつつある Git ですが、コミットメッセージは自由に書けるが故、プロジェクトや会社によってルールや書き方がまちまちですので、自分の為にも整理の意味も込めて、基本的なコミットメッセージをまとめてみました。
個人的な部分も多いかと思いますので、参考、またはご自身のコミットメッセージを見直すきっかけにして頂ければと思います。
prefix の前にまずは基本的なコミットメッセージの書き方。
改行含め、以下の形がフォーマットになります。
<prefix>: <subject>
<body>
<footer>
このコミットが何の為にコミットしたのかを英語の動詞を接頭詞として書きます。
いちいちコミットメッセージの全文を読まなくても、先頭にある prefix を見るだけである程度何をしているのかが、わかるようになる為、コミットメッセージの可読性が上がります。
subject の直訳、主題、件名といった意味からわかるように、コミットの簡潔な内容を記載します。
内容によっては prefix: subject
だけのコミットメッセージでも良いかなと個人的には思ってます。
コミットの詳細を記述します。
例えば変更した理由であったり、追加した機能の詳細を書けば後から見た時にどういったコミットなのかわかりやすくなります。
issue の ID やタイトルを記述します。
GitHub の Issues を使ってタスク管理やバグ管理をしている場合、#issue_number
と書くと、GitHub 上でコミットメッセージにリンクが付与され、該当の issue のページに移動することができます。
また、Close #issue_number
のような書き方をすると、自動的に該当の issue を close 出来たりします。
参考:Linking a pull request to an issue | GitHub Docs (opens new window)
update: 削除ボタンの色変更とアイコン追加
ぱっと見で削除ボタンと分かりずらく、ユーザーが誤ってクリックしてしまう可能性を無くす為、
削除ボタンの色を赤に変更とtrashアイコンを追加しました。
#53 削除ボタンのスタイル変更
上記で prefix には英語の動詞を記載すると書きましたが、実際書くべき prefix をまとめました。
但し、プロジェクトのルールで変わったり、細かすぎると覚えきれなかったり逆にややこしくなったりする可能性がある為、最低限必要な prefix のみ上げたいと思います。
新規ファイルや機能の追加の際に使う接頭詞。
ライブラリの追加をadd
とは分けてchore
で運用することもあるようですが、取り敢えずはシンプルに追加はadd
でいいかなと思ってます。
バグ修正の際に使う接頭詞。
本番運用中に発生した緊急的なバグ修正の際に使うhotfix
と分ける場合もありますが、バグ修正は全てfix
にまとめます。
機能の更新や修正の際に使う接頭詞。
ライブラリのバージョンアップ等の際にupgrade
を使うこともありますが、update
にまとめてます。
ファイルを削除、コードの一部を取り除いたときに使う接頭詞
他にも似たようなニュアンスで(厳密には違う)delete
もありますが、シンプルに削除はremove
で統一。
コードの改善やリファクタリングの際に使う接頭詞。
一通りざっと機能実装して、後からリファクタリングするっていうパターンが多い自分としてはよく使う prefix になります😅