git log --decorate
関連する参照に関する情報をログ出力に追加します。
commit 9e895ace5d82df8929b16f58e9f515f6d54ab82d (tag: v3.10-rc7)
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date: Sat Jun 22 09:47:31 2013 -1000
Linux 3.10-rc7
この情報は、どのタグ (またはブランチ) にこのコミットが含まれているかを追跡するのに役立ちます。制限されたファイルのセット (サブディレクトリなど) を表示する場合、それらのコミットのタグは必要ありません。ログ出力にタグへの参照を入れる方法はありますか?
前述git describe
しましたが、v3.10-rc7-135-g98b6ed0
これは、この変更がコミットされたブランチのタグに関連するものです。私が探しているのは、コミット間のタグ名です。
わかりやすくするために、これは現在の状況です。
$ git log --decorate --oneline
98b6ed0 (HEAD, origin/master, master) Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
1a506e4 Merge branch 'drm-fixes' of git://people.freedesktop.org/~airlied/linux
578a131 dlci: validate the net device in dlci_del()
11eb264 dlci: acquire rtnl_lock before calling __dev_get_by_name()
...
9e895ac (tag: v3.10-rc7) Linux 3.10-rc7
私がしたいのは次のようなものです:
98b6ed0 (v3.10-rc7+, HEAD, origin/master, master) Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
1a506e4 (v3.10-rc7+) Merge branch 'drm-fixes' of git://people.freedesktop.org/~airlied/linux
578a131 (v3.10-rc7+) dlci: validate the net device in dlci_del()
11eb264 (v3.10-rc7+) dlci: acquire rtnl_lock before calling __dev_get_by_name()
...
9e895ac (tag: v3.10-rc7) Linux 3.10-rc7
コミット ハッシュの代わりに の出力を使用git describe
すると、次のようになります。
$ git log --decorate --oneline -n4 | awk '{system("git describe " $1 " |tr -d '\''\n'\''");$1="";print}'
v3.10-rc7-135-g98b6ed0 (HEAD, origin/master, master) Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
v3.10-rc7-54-g1a506e4 Merge branch 'drm-fixes' of git://people.freedesktop.org/~airlied/linux
v3.10-rc6-81-g578a131 dlci: validate the net device in dlci_del()
v3.10-rc6-80-g11eb264 dlci: acquire rtnl_lock before calling __dev_get_by_name()
...
v3.10-rc7 (tag: v3.10-rc7) Linux 3.10-rc7
ご覧のとおり、コミットがマージされたポイントではなく、古いタグ名が参照ポイントとして使用されています。説明のためにgit log --oneline
ここで使用していますが、実際にはより完全な出力を使用したいと考えていますgit log -p --stat
。