雰囲気で書いていたコミットメッセージのプレフィックス。
人によって色んな種類のプレフィックスがあり、個人的に「結局どれが良いんじゃ」と思ったのでまとめました。
そもそもPrefixとは
Prefixとは接頭辞で、コミットメッセージの先頭に特定の文字をつけることです。
feat : 〇〇の機能を追加
refactor : 〇〇の機能をリファクタ
fix : 〇〇で起きていたバグを修正
feat, refactor, fixなどがプレフィックスです。
なぜPrefixをつけると良いのか
プレフィックスがつくことにより、以下のメリットがあります
- レビューワーが何に対する変更なのか見やすくなる
- コミットをプレフィックスレベルで分けるようになるので、コミットの粒度が適切になる
- コミットログが検索しやすくなる
よく使うPrefix一覧
色々な方の記事を参考にさせていただいたのですが、Angular.js/DEVELOPERS.mdへのリンクが多かったため、真似させてもらいました。
Prefix | 意味 |
---|---|
add | ちょっとしたファイル・コードの追加 ex)画像ファイル |
change | ちょっとしたファイル・コードの変更 ex)画像差し替え |
feat | ユーザーが利用する機能の追加。add/change を内包しても良い。 |
style | 機能部分を変更しない、コードの見た目の変化 ex)CSS |
refactor | リファクタリング |
fix | バグ修正 |
remove | ファイルなどの削除 |
test | テスト関連 |
chore | ビルド、補助ツール、ライブラリ関連 |
悩みどころだったのが、フロントで画像だけ差し替えるちょっとした修正やコードの追加はfeat
なのか?と疑問に思っていましたが、「ユーザーが利用する機能かどうか」でプレフィックスを随時分けていくのが一番しっくりきました。
コミットメッセージの書き方
コミットメッセージにはWhatとWhyを書くのがおすすめです。
サラッとコミットメッセージを見ているだけでも意図が伝わりやすくなります。
fix: 〇〇のエラーが起きているため、△△を修正
ただ、チームで合意が取れているものはこの限りではないと思っています。
例えばVue2→Vue3に書き換えするとチームで合意が取れていれば、WhatとWhyがなくても良いと思っています。
例
refactor: 〇〇ファイルをcomposition apiに書き換え
まとめ
- プレフィックスはユーザーが利用する機能かどうかで分けると良き!
プレフィックスつけた方が良いのはわかっているけど、適切なプレフィックスがわからん!!と思っていたのでこの機に使い方をまとめられて良かったです。
参考記事