LoginSignup
12
11

More than 5 years have passed since last update.

Git | Emoji を利用した Git の commit フォーマットの一例 #git #emoji

Posted at

:musical_score: 概要

Emoji を利用した Git の commit フォーマットの一例

:musical_note: 前提

  • Atom のコミットメッセージのルールを参考にしました
  • このフォーマットを広めよう、という意志はないのでフォーマットの是非について議論する気はない
  • 所属組織および個人のプロダクトに関して、このルールでやってますよ、という一例
    • やってますよ、というよりはこれからやりますよ(2015/01/30 ~)
    • 試行錯誤するので、変化すると思う。この記事を最新に保てるか不明

:musical_note: 利点

  • 先頭の絵文字を見ただけでコミット種別を即判断できる
  • コミット種別を分けることで、コミット粒度が適切になる
  • コミットメッセージのフォーマット統一
  • フォーマットを統一しておくことで増す利便性
    • 検索しやすくなる
    • 自動処理がしやすくなる

:musical_note: 欠点

  • 入力が面倒
    • Snippet で対応
      • 自組織+個人の開発においては、エディタが統一されているので問題なし

:musical_note: Rules

Format Desc
:new: add: input_your_summary 仕様追加
:up: modify: input_your_summary 仕様変更
:x: delete: input_your_summary 仕様削除
:recycle: refactor: input_your_summary リファクタリング
:wrench: tool: input_your_summary ツール等、人間以外によるコミット
:ballot_box_with_check: test: input_your_summary テストコードの追加
:book: doc: input_your_summary ドキュメント
:thumbsup: bump up: input_your_summary バージョンアップ
:imp: dirty: input_your_summary 動かないバージョンのコミット等、仕方なく行うコミット
:question: other: input_your_summary 未分類。分類不可

:musical_note: Snippets

Sublime Text 2 のスニペットです。

git_commit_snippets

:pencil: 補足

  • 仕様新規・仕様更新・仕様削除はあくまで仕様に対して分類する。振る舞いが変わらないならリファクタリング
  • テストについては、プロダクトコードだけあるシステムに後からテストを追加するようなケースを想定
    • 新規機能の実装時にプロダクトコード・テストを一緒にコミットする場合は、仕様追加に分類
  • ドキュメントは、 README や API ドキュメントなど
  • バージョンアップは version ファイルの更新。この更新は version ファイルの更新以外と混在させない
  • Dirty は、やむを得ず作業途中のコミットを行います、というようなケース
  • 絵文字の直後に同等の意味を持つ英語を保持するのは、冗長かな?という話になった
    • しかし、慣れてる人以外にはあったほうが有益
    • どうせ Snippet で入力するので入力の手間的には気にならない

コミットイメージ

実際に、上記の Snippet 作成時に Emoji Format の Commit 利用してみました。

git_emoji_commit1.png

:link: 関連記事

Git の Commit Template + Subliem Text 2 の Snippet でコミットメッセージの作法を統一・効率化する

12
11
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
12
11