「git log --pretty=format
で tagを表示する」とはつまり、
[2018-07-27 23:13:04 +0900] ec017df : Merge branch 'b3.3_4.6'
[2018-07-10 23:09:09 +0900] cc0b4f3 : Fix IncursionMods
↑を↓にしたいってことです。
[2018-07-27 23:13:04 +0900] ec017df : Merge branch 'b3.3_4.6' tag: v3.3_4.6
[2018-07-10 23:09:09 +0900] cc0b4f3 : Fix IncursionMods
tl;dr
# 色なし
git log --pretty=format:'[%ad] %h : %s %D' --date=iso --decorate-refs=tags
# 色付き
git log --pretty=format:'%C(yellow)[%ad] %C(green)%h %Creset: %s %C(red)%D%Creset' --date=iso --decorate-refs=tags
解説
%D
を使うとref name
とやらが表示されます。
$ git log --pretty=format:'[%ad] %h : %s %D' --date=iso
[2018-07-27 23:13:04 +0900] ec017df : Merge branch 'b3.3_4.6' HEAD -> master, tag: v3.3_4.6, origin/master
こんな感じ(HEAD -> master, tag: v3.3_4.6, origin/master
の部分)。
ちなみに%d
もあってちょっとフォーマットがちょっと違います。
$ git log --pretty=format:'[%ad] %h : %s %d' --date=iso
[2018-07-27 23:13:04 +0900] ec017df : Merge branch 'b3.3_4.6' (HEAD -> master, tag: v3.3_4.6, origin/master)
で、これがHEAD
とかリモートとかが混ざっていて邪魔。タグだけでいいのに。
そんなとき--decorate-refs=
オプションを使うことで%D
, %d
で表示するものを制御できます。
--decorate-refs=tags
だとタグだけになるわけですね。
このオプションの引数はtags
以外にはheads
とremotes
があるみたいです。
お試しあれ。