如何从Git中的标签名称获取分支?

时间:2012-10-05 21:10:17

标签: git git-branch git-tag

我正在尝试从给定标记中获取分支名称。 我试过了git describe --tag <tag-name>,但这并没有为我提供任何分支名称。我尝试使用gitk显示标签和分支,但gitk没有显示标签。当我列出标签git tag -l时,我看到列表中存在标签名称。

我只想要一个简单的命令,它可以在提供标签名称时告诉我分支。

3 个答案:

答案 0 :(得分:5)

Git中的标签和分支只是指向文件特定快照的标签。话虽这么说,标签不是链接到分支,而是链接到提交。

因此,您必须检查该分支是否包含您的标记指向的提交,如下所示:

git branch --contains <tag name>

答案 1 :(得分:1)

标记只是提交的别名。

那说,这应该回答你的问题: https://stackoverflow.com/a/2707110/550177

答案 2 :(得分:0)

如果您知道标签链接到的提交号,则可以通过以下命令找到放置标签的分支:

git_branch=$(git for-each-ref | grep ${commit_num} | grep origin | sed "s/.*\///")