标签和发布之间有什么区别?

nao*_*aor 142 git github github-api

使用GitHub的API,我无法获得发布列表,但我可以获得标签列表.

他们之间有什么区别?

nul*_*ken 167

他们之间有什么区别?

A tag是指向特定提交的指针.该指针可以通过一些附加信息(标签的创建者的身份,描述,GPG签名......)来充电.

A tag是git概念,而a Release是GitHub更高级别的概念.

正如GitHub博客官方公告中所述:"发布是具有更改日志和二进制资产的一流对象,它们提供了超出Git工件的完整项目历史."

A Release是从现有创建的,tag并公开发行说明和链接,以从GitHub下载软件或源代码.

使用GitHub的API,我无法获得发布列表,但我可以获得标签列表.

当前版本的GitHub API没有公开管理Releases(创建,更新,...)的方法.我很确定在曝光之前这不应该花太长时间.

但是,目前可以列出特定存储库的版本和标记.

例如,下面的url将列出来自ReactiveUI6个版本(截至今天)

而这个将从同一个存储库列出54个标签(截至今天)

创建发布版目前正处于一个涉及手动操作的过程中(添加发行说明,上传软件包,......).这解释了为什么tags不透明地被视为Releases.


如果您希望收到有关API更改的通知,可以订阅GitHub API Changes博客.

但是,如果您不能等待,GitHub API主页会声明"如果您有任何问题或请求,请联系支持人员. ".这可以通过发送电子邮件至support@github.com或此联系表格来完成.

更新:

GitHub API现在允许操作Releases.看公告.

  • 似乎在您在 GitHub 中创建第一个版本之前,您的所有标签都会显示在“版本”下。我觉得这毫无必要地令人困惑。 (3认同)
  • 我不认为这很奇怪。这仅仅意味着 Rails 团队没有使用 GitHub UI 从现有的 `tag` 创建一个 `Release`。`Release`s 是最近添加的。也许 Rails 团队更喜欢坚持他们当前的流程,并在新版本发布时发布到他们的博客(参见 **[3.2.14 公告](http://weblog.rubyonrails.org/2013/7/23/ Rails-3-2-14-已发布/)**)。 (2认同)
  • +1用于标记和发布之间的明确区分以及各自的用途:"`标签`是**git**概念而"发布"是**GitHub**更高级别的概念... A Release`是从现有的`tag`创建的,并公开发行说明和链接,以便从GitHub下载软件或源代码." (2认同)