タグによる折りたたみは簡単です。git log
と の 2 つのオプションが--simplify-by-decoration
あり--decorate-refs=<pattern>
、次のように使用できます。
# --graph is useful to have a clear view of parent <-> child relation,
# you may use --oneline to have a compact view, or drop it if you want the complete
# commit messages
git log --graph --oneline --simplify-by-decoration \
--decorate-refs=refs/tags # <- this indicates 'keep only tags'
「の後のすべてTAG6
、前のタグのみ」を取得する部分的な方法の 1 つTAG6
は、2 つのコマンドでログを取得することです。
# in a 'mylog' script :
#!/bin/bash
log_history () {
# get all from TAG6 up to HEAD :
git log --decorate --graph TAG6..HEAD
# get only tags up to TAG6 :
git log --decorate --graph --simplify-by-decoration \
--decorate-refs=refs/tags TAG6
}
# combine the two commands, and pipe them in your pager
# if you pipe the output of 'git log', git removes the default '--decorate',
# that's why I added it in the commands above
log_history | less
上記により、表示したいコミットの完全なリストが得られます。唯一欠けている部分は、グラフでTAG6
とその子コミット ( のすぐ上のコミットTAG6
) の間のリンクが描画されないことです。
git log
あなたが説明した組み合わせを 1 つのコマンドで示す方法がわかりません。