我想知道在Git中是否有可能檢索標籤列表(很像git tag
命令的結果),但列表應僅限於某個分支。Git可以檢索僅存在於某個分支中的標籤列表嗎?
如果這是可能的,任何人都可以解釋這是如何完成的?也許有一些模式匹配魔術?
我想知道在Git中是否有可能檢索標籤列表(很像git tag
命令的結果),但列表應僅限於某個分支。Git可以檢索僅存在於某個分支中的標籤列表嗎?
如果這是可能的,任何人都可以解釋這是如何完成的?也許有一些模式匹配魔術?
我認爲這會做你想要什麼:
git log --pretty='%H' <branch> |
xargs -n1 git describe --tags --exact-match 2>/dev/null
這使用git log
得到的一個分支提交列表,然後將它們傳送到git describe
,看看他們是否符合標籤。
另一種方法是可以通過Karthik Nayak (KarthikNayak
)新的git標籤選項--merged
(在git的2.7+,2015年第四季度)
git tag --merged <abranchname>
見commit 5242860,...(2015年9月10日)。
(在commit 8a54523由Junio C Hamano -- gitster
--合併,2015年10月5日)
tag.c:實行 '--merged' 和 '--no-合併' 選項
使用 '
ref-filter
' 的API將'--merged
'和'--no-merged
'選項設置爲'tag.c
'。
- '
--merged
'選項允許用戶只列出合併到指定提交中的標記。- 「
--no-merged
」選項允許用戶只列出未合併到指定提交中的標籤。如果沒有提供對象它假定
HEAD
作爲對象。
我可能是錯的,但它需要(很少)腳本 – CharlesB
不知道,但這是你想要的嗎? [分支包含的列表標記](http://stackoverflow.com/q/2381665/11343) – CharlesB