Gitのコミットメッセージを絵文字を使って見栄えを良くしつつスプレッドシートで簡略化する
Git コミットメッセージは Prefix を使うと可読性が向上する
Git コミットメッセージのルールどうしていますか?
私は「Prefix(接頭辞) + 絵文字 + 変更内容」をメッセージに書いています。
コミットメッセージの書き方についてあれこれ調べていたところ、Prefix を付けた方が良さそうだという結論に至りました。
さらに絵文字と組み合わせることで、ひと目でどんな追加・変更が行われたのかがわかり良いそうです。
可読性が向上するのでチーム開発との相性も良さそうですね。
Git コミットメッセージのテンプレート
コミットメッセージに絵文字や Prefix を導入するのは良いですが、色々と面倒もついてきます。
- Prefix や Emoji の打ち間違えを防ぐにはどうするか
- コミットごとに Prefix をつけるのがめんどくさい
Git のコミットメッセージのテンプレート機能を使う
Git にはコミットメッセージのテンプレートを用意する機能がついているそうです。
この機能を使うことで上記の 2 点の問題を解決できます。
この方法については Goodpatch さんが詳しく取り上げているので、その記事を参考にしてください。
Emoji で楽しく綺麗なコミットを手に入れる
スプレッドシートを使う
私は、Git のテンプレート機能を使わず、スプレッドシートをしようする方法を選択しました。
主な理由は以下の 3 点です。
- テンプレート機能より簡単に導入できる
- テンプレート機能と比較してもコミットメッセージ入力の手間がそんなに変わらない
- スプレッドシートが好きだから
スプレッドシートの関数を組む
以下セルのイメージです。
A列 Emoji |
B列 Prefix |
C列 Message |
D列 Copy |
---|---|---|---|
関数はARRAYFORMULA
とIF
を使ったシンプルなものです。
=ARRAYFORMULA(
IF(
C2:C="",
"",
"git commit -m """&B2:B&": "&C2:C&""""
)
)
D列
(Copy)に 👆 の関数を組む事で、C列
(Message)列にコミットメッセージが入力されたときにD列
(Copy)にコミットコマンド付きのメッセージが出力されます。
👇 はセルに関数を埋め込んだ例です。
A列 Emoji |
B列 Prefix |
C列 Message |
D列 Copy |
---|---|---|---|
🎉 | :tada: initial commit | =ARRAYFORMULA(IF(C2:C="", "", "git commit -m """&B2:B&": "&C2:C&"""")) |
|
🐛 | :bug: bug fix | ||
⚙️ | :gear: config | ||
👍 | :+1: feature | ||
📦 | :package: package |
例えば、SASS を導入してコミットしたいとき、C列
(Message)に「sass を導入」とコミットメッセージを書き込むだけでD列
(Copy)に、コマンド付きのコミットメッセージが生成されます。
あとはD列
のメッセージをそのままコピーして、ターミナルにペーストするだけで OK!
A列 Emoji |
B列 Prefix |
C列 Message |
D列 Copy |
---|---|---|---|
📦 | :package: package | sass を導入 | git commit -m ":package: package: sass を導入" |
ちなみに Github には📦 package: sass を導入
と表示されます。
参考にしたい絵文字と Prefix
これまで、コミットメッセージの管理方法だけを紹介してきましたが、大事なことを一つだけ書き忘れていました。
それは、絵文字と Prefix の 使い方のルールです。
上記にリンクしている Goodpatch さんのブログでも触れられてはいますが、加えて参考にできるサイトがありましたので紹介します。
GitHub のコミットメッセージに絵文字を入れて開発効率をあげる
どれも参考になるので、ぜひご活用ください!
Discussion