🧐

【Git】Gitのコミットメッセージ、私ならこう書く

2022/11/03に公開約1,300字

はじめに 📖

最近まで、コミットメッセージを書くときはその時々で技術ブログなどを参考にしながら書いていました。しかし、ある記事を見たときからは、これから説明する書き方で統一するように意識しています。

コミットメッセージの書き方にいつも苦労するという方には是非ご覧いただき、自分の書き方、ルールを考えるための一助となれば幸いです。

結論 ⚖️

Gitのコミットメッセージ、私ならこう書く!

[fix] 〇〇のため、△△を追加(#109)

方法 💪

1.接頭語をつける

コミットメッセージを瞬時に見て、
これが何を行ったコミットなのかをコードレビュー者、または未来の自分(コミットした瞬間からそのコミットは過去のもの)へ伝えるために接頭語をつけるようにしています。

私は次のルールで接頭語をつけています。

  • [fix]:バグ修正(バグの大小に関わらず)
  • [add]:新規機能、新規ファイル追加
  • [update]:機能修正(バグ以外)
  • [change]:仕様変更
  • [clean]:整理(リファクタリング)
  • [disable]:無効化(コメントアウト)
  • [remove]:ファイル削除

2.理由 & 簡潔な内容

以前は、簡潔な修正内容だけのコミットメッセージでした↓。

○○の修正

変更した理由と内容を簡潔に書くことは、コードレビュー者に対しての優しさでもあります。さらに、未来の開発メンバーが過去のコミットを見たときにそのコミットの意味を理解するために役立ちます。

そうした理由から、
今ではその修正を行った理由と修正内容を簡潔にコミットメッセージとして残すようにしています。

3.チケット駆動

これはプロジェクトによって異なりますが、今のプロジェクトはチケット駆動のタスクなので、チケット番号をコミットメッセージの最終尾に付加しています。

これにより、チケットとコミットの紐付けもできます。

4.その他

日本語/英語論争

コミットメッセージは日本語で書くべきか、英語で書くべきか。。
これはプロジェクトでルールが統一されているのであれば、それに従います。
それ以外は日本語で書くようにしています。

その理由は2つあります。(私は英語できない。。という前提条件)
1つ目は、コミットメッセージのために修正理由と内容を英文で考える時間がムダ。
2つ目は、自分をはじめ英語力の乏しいメンバーがコミットメッセージを見て即理解できない。

コミット単位

コミットは可能な限り細かな単位で行いましょう。
バグ1つの修正に対して、1コミット。1機能追加に対して、1コミット。
複数バグの修正を1コミットに纏めることは歓迎されませんのでご注意。

5.参考資料

https://qiita.com/itosho/items/9565c6ad2ffc24c09364

https://qiita.com/konatsu_p/items/dfe199ebe3a7d2010b3e

Discussion

ログインするとコメントできます