如何在 git 中获取所有本地和远程标签?

Posted

技术标签:

【中文标题】如何在 git 中获取所有本地和远程标签?【英文标题】:How to get all local and remote tags in git? 【发布时间】:2016-06-16 04:16:58 【问题描述】:

我想查看所有本地和远程标签。

查看我使用的所有本地和远程分支:

git branch -a

白色显示我的本地分支,绿色显示当前分支,红色显示远程(原始)分支。

但是-a 用于git tag 用于创建带有注释或消息的标签。

git branch -a 等效的标签是什么,可以显示所有本地和原始标签?

【问题讨论】:

看看***.com/questions/5358336/…,看看它是否能满足您的需求。 【参考方案1】:

首先,通过以下方式将您的标签与远程存储库同步:

git fetch --tags

然后,您可以使用git tag 列出您的存储库的标签。

您也可以使用git tag -l。但是如果你使用-l 选项,你可以传递一个搜索模式来过滤掉标签。

【讨论】:

【参考方案2】:

你可以在任何你有 url、路径或远程名称的 repo 中列出所有 refs

git ls-remote u://r/l           # or path, or remote name

和there's options to limit what's listed。

【讨论】:

【参考方案3】:

首先做一个完整的抓取

# fetch (update local branch) with all tags branches and 
# the --prune will remove the 
git fetch --all --prune

git fetch

从一个或多个其他存储库中获取分支和/或标签(统称为“refs”),以及完成其历史所需的对象。

--all 获取所有遥控器。


如何列出所有标签?

git tag -l

***-l / --list <pattern> /***

列出名称与给定模式匹配的标签(如果没有给出模式,则为 all)。

不带参数运行“git tag”也会列出所有标签。

模式是一个 shell 通配符(即,使用 fnmatch(3) 匹配)。可以给出多种模式;如果其中任何一个匹配,则显示标签。

【讨论】:

以上是关于如何在 git 中获取所有本地和远程标签?的主要内容,如果未能解决你的问题,请参考以下文章

Git如何修改远程仓库地址

无需克隆即可从远程仓库获取最后一个 git 标签

git学习GitLab中如何批量删除本地以及远程的TAG标签

git学习GitLab中如何批量删除本地以及远程的TAG标签

Git:区分本地和远程标签

如何更新本地标签以匹配远程?