我正在尝试从给定标签获取分支名称。我尝试了git describe --tag <tag-name>
,但这没有提供任何分支名称。我尝试使用gitk
显示标签和分支,但是gitk没有显示标签。当我列出标签git tag -l
时,我看到标签名称存在于列表中。
我只想要一个简单的命令,当提供标签名称时,它可以告诉我分支。
Git中的标签和分支只是指向文件特定快照的标签。话虽这么说,Tags不是链接到分支,而是链接到提交。
同样,您必须检查wich分支是否包含标签所指向的提交,如下:
git branch --contains <tag name>
标签只是提交的别名。
也就是说,这应该回答您的问题:https://stackoverflow.com/a/2707110/550177
如果知道标签链接到的提交编号,则可以从此命令中找到放置标签的分支:
git_branch=$(git for-each-ref | grep ${commit_num} | grep origin | sed "s/.*\///")