在git中,列出自某些标记以来的所有标记

eki*_*aby 7 git git-tag git-rev-list

我正在使用标签来识别发布版本并识别任务的"开发完成"提交.做一个git tag我得到如下列表.

> git tag
v0.1.0
task_1768
task_2011
task_1790
task_1341
v0.1.1
task_2043
task_2311
v0.1.2
Run Code Online (Sandbox Code Playgroud)

假设所有标签都指向master分支上的提交,有没有办法列出所有标签,因为有些标签?例如,要生成v0.1.2发布中包含的所有任务的列表- 我正在寻找类似下面的内容(这不是实际的命令).

> git tag -l "task_*" --since v0.1.1
Run Code Online (Sandbox Code Playgroud)

获得如下输出.

task_2043
task_2311
Run Code Online (Sandbox Code Playgroud)

有没有办法做到这一点git tag

有没有办法做到这一点git rev-list

(或者其他一些git命令?)

UPDATE

根据答案和评论,以下是我目前正在使用的内容.

> git log v0.1.1.. --decorate | grep -Eow 'tag: ([a-zA-Z0-9.-_]*)' | awk '{ print substr($0, 6); }'
task_2043
task_2311
v0.1.2

> git log v0.1.1.. --decorate | grep -Eow 'tag: ([a-zA-Z0-9.-_]*)' | awk '{ print substr($0, 6); }' | grep -Eo 'task_.*'
task_2043
task_2311
Run Code Online (Sandbox Code Playgroud)

第二次更新

新选择的答案.这正是我最初寻找的.更优雅.

> git tag --contains v0.1.1
v0.1.1
task_2043
task_2311
v0.1.2

> git tag --contains v0.1.1 | grep -Eo 'task_.*'
task_2043
task_2311
Run Code Online (Sandbox Code Playgroud)

Mat*_*nry 10

git tag --contains v0.1.1 将显示包含给定标记的所有标记 - 即标记,您可以从中追溯历史记录并到达给定标记.