我可以使用以下方法成功列出存储库中的标签github3
:
repo.iter_refs(subspace='tags')
这导致生成github3.git.Reference对象。有没有办法让我使用类似的机制来获取github3.git.Tag对象?现在我被迫将每个Reference
对象转换成我自己的Tag
.
我可以使用以下方法成功列出存储库中的标签github3
:
repo.iter_refs(subspace='tags')
这导致生成github3.git.Reference对象。有没有办法让我使用类似的机制来获取github3.git.Tag对象?现在我被迫将每个Reference
对象转换成我自己的Tag
.
因此,获取github3.git.Tag
对象的唯一方法是尝试检索特定的带注释标签(这是以非常特定的方式创建的标签)。
如果这是您要尝试做的,那么您的代码将类似于
tags = [repo.tag(r.object.sha) for r in repo.iter_refs(subspace='refs')]
您可以通过当前方法或通过repo.iter_tags()
. 要么会工作。后者将返回github3.repos.RepoTag
,而不是github3.git.Tag
虽然,因为 API 为每个返回的信息大不相同。