Skip to content

Instantly share code, notes, and snippets.

@wraith13
Last active March 24, 2020 02:02
Show Gist options
  • Save wraith13/b8ad674c6a34ac1aca9f4c36c04da991 to your computer and use it in GitHub Desktop.
Save wraith13/b8ad674c6a34ac1aca9f4c36c04da991 to your computer and use it in GitHub Desktop.
コミットメッセージの為のフレーバー絵文字

コミットメッセージの為のフレーバー絵文字

  • ⚠️ このドキュメントは編集中/準備中のものです
  • ⚠️ いつくかのプロジェクトで試験運用しつつ固めているところです

🔭 概要

コミットメッセージの先頭に付与する、視認性の向上を図り見た目の賑やかす為の意味を有する装飾としての絵文字定義

💡 コンセプト

  • コミットメッセージの先頭に一つだけいずれかの絵文字を付与する。

    全てのコミットメッセージに付与することが望ましいが厳守はしない。

  • 後からの修正が利かないコミットメッセージに厳密性や完全性を求めても仕方が無いので、この絵文字にも厳密性や完全性は求めず簡潔さを優先する。

    故に、一つの絵文字に限定し、複数の絵文字は付与しない。

  • その時の気分で絵文字の選択が揺れるようなことを最小化する為に可能な限り明白な選択基準を定義する。
  • コミットメッセージが絵文字の示す意味に依存しないこと。

    絵文字を削除してしまっても困らないようなメッセージが望ましい。とは言え、そもそもコミットメッセージに厳密性・完全性がないのでそんなに深く気にしなくともよい。

  • ドキュメントが主体なプロジェクトではドキュメントがコード扱いとなり、メタドキュメントがドキュメント扱いとなる。同様にリソースが主体なプロジェクトではリソースがコード扱いとなる。
  • チームで開発してるプロジェクトに適用する際には反対意見に耳を貸すこと。

    GUI ツールを使っている場合は良いがコマンドラインツールを使っている場合、絵文字は意図通りに表示されない。

  • チームで開発してるプロジェクトに適用する際にはメンバーにフレーバー絵文字をつけることを強要しないこと。
  • コマンドラインツールを使っているメンバーがいる場合にはダイレクトに絵文字を入力することは避け:emoji:形式で入力すること。

🎮 絵文字とその選択基準

以下の順で、最初にヒットした絵文字を割り当てる。

  1. 新たな絵文字

    新たな絵文字割り当てるのが相当と思われる場合は、適切と思われる絵文字を選択し、この選択基準にその選択条件を記述する。

  2. 📍 マイルストーン

    リリースを示すコミットである。

  3. 🔬 些細な修正

    修正対象がコードかドキュメントなどを問わず、あらゆるちょっとした修正。

  4. 🎲 トライアルアンドエラー

    作業環境では動作確認できない為に行われる本来であればコミットされるべきでない未確認のコミット。

  5. 📚 多重なコミット

    本来であれば複数のコミットに分かれているべきコミット。 マイルストーンのような重要な内容を含む場合はそちらの絵文字を使用すること。

  6. 🔥 重大な悪影響のリスク
  7. 💉 動作確認が取れていない修正、アンドキュンメンテッドな挙動に依存してる修正
  8. どうしてこれで正常に動作するのか不明の修正

    正常に動作する確認はとれているがどうしてそのコードで正常に動作するのか不明な修正

  9. 🚀 パフォーマンス向上
  10. 💄 見た目の改善
  11. 💃 挙動の改善

    UI/UX 周りの挙動の改善

  12. 📈 計測
  13. 🍒 マージ
  14. 💸 コミットの取り消し
  15. 🚫 機能の削除
  16. 🎚 調整
  17. 👔 警告の除去
  18. ♻️ リファクタリング・清書・整理

    リファクタリング・清書・整理の結果、機能の削除パフォーマンス向上となるケースもあるが、基本的にはその修正の目的がリファクタリング・清書・整理であるならばリファクタリング・清書・整理とする。ただし、ちょっとしたリファクタリング・清書・整理を行った結果、大きなパフォーマンス向上となった場合はパフォーマンス向上を適用すること。

  19. 🛡 セキュリティ

    セキュリティ関連の機能追加や修正全般。ただし、セキュリティが悪化するような類いの修正であれば重大な悪影響のリスクあたりの絵文字の使用を検討すること。

  20. 💫 依存モジュールのアップデート

    依存しているモジュール・ライブラリ等のアップデート及び、それに追従する為のコード修正。

  21. 🚧 開発環境絡みの問題
  22. 🎚 設定
  23. ☔️ 問題の回避やその影響の軽減

    問題を直接的には解決できてないが回避策や影響軽減策などを施したもの。基本的には根本的が修正・対策がなんらかの形で別途行われるべきモノ。

  24. 🦋 バグ修正

    他の絵文字として表現されないバグ修正。新たな絵文字を割り当てるべきバグと思われる場合はそれを割り当てること。

  25. 🚥 仕様変更
  26. ⚖️ ライセンス
  27. 📝 ドキュメント
  28. サンプル(コード、データ等々)
  29. 🎨 リソース
  30. 📊 データ
  31. 🍽 メタコード
  32. 🛠 実装
  33. 開発終了

参考

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment