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