# コミットメッセージ規約
Gitのコミットメッセージにの書式についてルール化することで、コミットの目的がわかりやすくなる、履歴からのトラッキングの容易になる利点がある。
本規約のコミットメッセージの書式としては、Conventional Commits
をベースとした規約としている。
以下の形式でコミットメッセージを記載することとする。
<type>: <subject> <gitmoji>
1
コミットメッセージは type、subject、gitmojiの最大3つの要素から構成され、それぞれは後述する書式に従うものとする。 この中でも、type、subjectについては必須とし、ほかの要素についてはプロジェクトの運用にしたがい任意とする。
# type
typeについては必須の要素となり、以下のいずれかを選択するものとする。
type | 説明 |
---|---|
feat | 新機能の追加 |
fix | バグの修正 |
docs | ドキュメンテーションの更新 |
refactor | リファクタリング |
# subject
subjectについては必須の要素となり、変更内容を簡潔に記載するものとする。 issue idについては、PRから参照する運用を想定し、コミットメッセージの必須要素とはしないこととする。
# gitmoji
gitmojiについては任意の要素となり、変更内容を視認しやすい絵文字の使用を可能とする。
変更内容と選択される絵文字の対応については厳密とせず、開発者が任意に選択するものとする。
type(feat, fix, docs, refactorなど)に基づく、選択例を以下に示す。
==== Emojis ====
:ambulance: 🚑致命的なバグ修正(fix)
:bug: 🐛バグ修正(fix)
:+1: 👍機能改善・機能修正(fix)
:cop: 👮セキュリティ関連の修正(fix)
:art: 🎨レイアウト関連の修正(fix)
:green_heart: 💚テストやCIの修正・改善(fix)
:wrench: 🔧設定ファイルの修正(fix)
:building_construction: 🏗️アーキテクチャの変更(fix)
:tada: 🎉大きな機能追加(feat)
:sparkles: ✨部分的な機能追加(feat)
:up: 🆙依存パッケージ等のアップデート(feat)
:memo: 📝ドキュメント修正(docs)
:bulb: 💡ソースコードへのコメント追加や修正(docs)
:lipstick: 💄Lintエラーの修正やコードスタイルの修正(refactor)
:recycle: ♻️リファクタリング(refactor)
:fire: 🔥コードやファイルの削除(refactor)
:rocket: 🚀パフォーマンス改善(refactor)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# コミットメッセージ例
上記のルールに従った、コミットメッセージのサンプルは以下のようなものとなる。 以下のようなコミットをルールとすることで、変更内容を視覚的に把握しやすくなる利点がある。
feat: カレンダー機能の追加 🎉
1
fix: メモリリークの修正 🚑
1
docs: デプロイフローをドキュメント化 📝
1
refactor: Lintエラーの修正 💄
1