如何查看远程标签?

在Atlassian SourceTree中,如何知道哪些标签只是本地的,哪些也是远程的?

当创建一个标签时,你会得到一个选项“将标签推到:…”,但是如何知道一个标签在创建后是否被推了呢?我可以在本地看到我的所有标记,但我需要确保它们在远程中存在,以便其他开发人员可以提取它们。

152247 次浏览

即使没有克隆或抓取,你也可以用git ls-remote检查上游repo上的标签列表:

git ls-remote --tags /url/to/upstream/repo

(如“;当列出git-ls-remote时,为什么标签名后面有“^{}”?"”所示)

xbmono说明了需要引号的在评论中:

git ls-remote --tags /some/url/to/repo "refs/tags/MyTag^{}"

注意,你可以使用(git 1.8.3+, 2013年4月)在一个命令中推送你的而且标签:

git push --follow-tags

看到Push git提交&标签同时


具体到Atlassian SourceTree:

注意,在这个线程中,SourceTree只显示本地标记。

自2015年12月以来,在SRCTREEWIN-4015中有一个RFE(增强请求)。

一个简单的解决方法:

看到只有未推标签的列表吗?

Git push—标签

或检查&;Push all tags"箱子上的“推”;对话框中,所有标签将被推送到您的遥控器。

https://community.atlassian.com/tnckb94959/attachments/tnckb94959/sourcetree-questions/10923/1/Screen%20Shot%202015-12-15%20at%208.49.48%20AM.png

这样,您将“确定它们存在于远程中,以便其他开发人员可以提取它们”。

你可以用ls-remote列出远程存储库上的标记,然后检查它是否在那里。假设下面的远程引用名称为origin

git ls-remote --tags origin

你可以用tag在本地列出标签。

git tag

您可以手动或在脚本中比较结果。