列出带有特定模式的带注释的git标签,无需克隆或拉动

时间:2018-01-15 08:47:57

标签: git

是否可以列出具有特定模式的带注释标签,而无需克隆或从Git中提取整个存储库?

我想要做的基本上是这样的:

git tag -l "*pattern*" | sort -r

没有克隆回购。

我知道你可以使用ls-remote列出标签,即

git ls-remote --tags git://github.com/git/git.git

但是,如果我没有弄错的话,这似乎没有让我选择搜索*pattern*

有办法做到这一点吗?

2 个答案:

答案 0 :(得分:2)

是的,这是可能的。 您可以使用git ls-remote <remote> --tags <pattern>进行匹配。

例如: git ls-remote <remote> --tags **/v*.0 e8b29c3c46a59dc59e2a3b22c253860c23a9ea39 refs/tags/v1.0.0

VS

git ls-remote <remote> --tags **/v*.10

在存储标记refs/tags/v1.0.0的存储库中。

您可以查看ls-remote documentation

答案 1 :(得分:0)

以下命令列出了与模式

匹配的标记的最后数量个列表
git tag --sort=-version:refname --list '<pattern>' | head -n <number>