Eyes, JAPAN Blog > gitのコミットログでやっていること

gitのコミットログでやっていること

murakami

この記事は1年以上前に書かれたもので、内容が古い可能性がありますのでご注意ください。

こんにちは。
秋ももう終わりが見えてきた会津若松ですが、いかがお過ごしでしょうか?スキーの季節はまだかまだかと日々楽しみに待っている村上(kmhjs)です。

さて今日ですが、社内でも一部で浸透し始めているgitのコミットログに関するちょっとした話を紹介したいと思います。
今回紹介する内容ですが、これ自体は私個人が社内でのコミットログで始めて、ちょいちょい広まってきたルールとなっています。さてその内容ですが、そこまで難しい話ではありません。
みなさん、メールとか書くときって【緊急】とか【業務連絡】みたいな感じで、とりあえずぱっと見たらなんの話かわかるようにタグ的な感じのものをタイトルに入れませんか?このタグ的な要素を定形にしてコミットログにつけよう!というだけなのです。

たとえば、「readmeに使い方を書き足したぜ!」というとき、普通だと

  • Readmeに使い方を追記しました

となるはずですね。ここにちょっとタグっぽいのをつけて、

  • [ADD] Readmeに使い方を追記しました

みたいにするだけです。さらに、「readmeの使い方を更新したぜ!」というときですと、

  • Readme内の使い方の項目を更新しました

となるところを、

  • [MOD] Readme内の使い方の項目を更新しました

みたいにするんです。こんな感じで私は

  • [ADD]
  • [DEL]
  • [MOD]
  • [FIX]
  • [TMP]
  • [WIP]
  • [COSM]

から成るタグを使っています。
このタグ群は以下に対応させて使っています。

  • [ADD] : 何かを追加したとき
  • [DEL] : 何かを削除したとき
  • [MOD] : 何かを編集等したとき
  • [FIX] : 何かを修正目的で編集したとき
  • [TMP] : ディレクトリ構造の変更等のプロジェクトの本質とはそこまで大きくかかわらない変更をしたとき
  • [WIP] : 作業中だけど仕方なくコミットするとき
  • [COSM] : コードのリファクタリング等をおこなったとき

おそらく、例としてちょこちょこ出すだけではうーんという感じですので例を出してみます。以下には私個人の.zshrc周辺のコミットログの一部を(git log --oneline --graphの出力)示しています。まず最初はタグがないバージョン。

* 3058d83 Update syntax
* e260d18 Added Github commiter information template command
* 07eba2d Removed raw2img (moved to github)
* c97e102 Fixed unnecessary function
* aea27e2 Updated right prompt more flexible
* bb83e23 Updated right prompt settings
* 9d8c5a8 Fixed unnecessary parameter
* 2914833 Updated for git status

次にタグありのバージョン。

* 3058d83 [MOD] Update syntax
* e260d18 [ADD] Added Github commiter information template command
* 07eba2d [DEL] Removed raw2img (moved to github)
* c97e102 [FIX] Fixed unnecessary function
* aea27e2 [MOD] Updated right prompt more flexible
* bb83e23 [MOD] Updated right prompt settings
* 9d8c5a8 [FIX] Fixed unnecessary parameter
* 2914833 [MOD] Updated for git status

どうでしょう?大雑把にですが、何をしてるか把握しやすくなるのではないでしょうか?
またシェル等のプラグインとして、定形で指定したタグをハイライトする機能を用意するともう少し見やすくなるかなーと思います。

もし興味のある方は使ってみてはいかがですか?


担当: 村上 (PLフィルター買いました)

  • このエントリーをはてなブックマークに追加

Comments are closed.