在GitHub中,“Release”是什么意思?

66
这是什么东西? 它通常用于什么? 它的使用范围有多广? 它通常怎么使用?

1
注意:自2021年4月起,GitHub发布可以进行评论/讨论。请参见我的下面编辑过的答案 - VonC
2个回答

39

GitHub官方文档中指出:

ReleasesGitHub 为你的用户打包和提供软件的方式。你可以把它看作是使用下载提供软件的一种替代方法。

通过 Releases,你可以提供二进制文件的链接,以及描述你更改情况的发布说明。

在其核心中,Releases 基于 Git 标签。标签标记了项目历史上的特定时刻,因此它们是指示版本发布的好方法。Releases 按照标签日期进行排序,方法如下:

有关查看现有标签的更多信息,请参见 使用标签


36

我希望备份这个官方解释并从已经使用过该功能的人那里了解它的工作原理。

定义

如 "关于发布"所述:

发布是GitHub提供给用户软件的打包方式。你可以将其视为提供软件的下载的替代品。

发布是一个容器,它包含一个或多个资产,与一个git标记相关联(因为自git push --follow-tags 只推送已注释的标记

它自2013年7月起取代了旧的“GitHub下载”系统,该系统开始被滥用(人们在其中存储任何和所有东西),并于2012年12月删除。
通过强制进行间接操作(标记 => 发布 => 资产),GitHub 使该功能更易于管理。

dirkjot添加评论在评论中指出:

容易忽略的两个重要点:

  1. 发布最初是“空的”,因为它与标记相关联,而不是从该标记生成的
  2. 资产是上传的,因此不一定与源代码相关。

注:空的发布将自动包含已打过标记的提交源代码的 tgz 和 zip 版本


用途

GitHub发布的使用方法:

  • 避免在像git这样的源代码控制系统中存储从项目构建的大型生成的二进制文件。
  • 由库的用户下载“最终结果”,即从git repo内容中已经为他们构建好的“交付物”,即使他们没有git也可以。

示例

使用发布功能的项目的示例是Windows版Git发布
Windows版Git而言,考虑到您可能首先想安装git,而且可能没有正确的工具集来编译其源代码,这非常方便。


API注意事项

正如GitHub V3 Release API所说明的那样,发布不是标记。
当您创建发布时,需要标记名称,但这将创建一个的发布(与该标记相关联)。

从发布中,您可以上传一个或多个资产

预期以其原始二进制形式提供资产数据。

POST https://<upload_url>/repos/:owner/:repo/releases/:id/assets?name=foo.zip

注意:自GitLab 8.2(2015年11月)以来,GitLab也支持“发布”


讨论

自2021年4月起,您现在拥有:

发布支持评论和反应与讨论链接

您现在可以将讨论链接到新的发布版本!

在起草新版本时,请勾选“为此版本创建讨论”框,选择一个类别并发布。
您的社区将能够对发行说明做出反应和评论,从而为项目提供更多庆祝活动和反馈机会。
GitHub Mobile上本地提供发布讨论。

enable discussion creation on a release -- https://i1.wp.com/user-images.githubusercontent.com/1923260/113341794-76e64a00-92e2-11eb-9d35-3f843d0a313c.png?w=1208&ssl=1

有关更多信息,请参见GitHub讨论GitHub发布版GitHub Mobile文档。


请注意,在2021年第3季度,您可以拥有本地changelog生成器


自2022年6月起,您可以为先前发布版本设置/更改/修改发行说明:

生成发行说明时现在可以手动选择以前的发布版本

现在可以在GitHub发布UI中手动选择以前发布的版本来生成发布说明。

有关生成发布说明的更多信息,请参见自动生成的发布说明文档。 有关GitHub发布版的更多信息,请参见GitHub发布版文档


你能编辑你的回答设计吗?内容很好,但应该重新制作一个高质量的答案。我主要是为其他人提供问题,所以它应该得到一个易于阅读的答案。 - Ernst Robert
@BerndErnst 当然可以。我已经相应地重新撰写了答案。 - VonC
1
两个容易被忽视的重要点:1/ 发布版本最初是“空的”,因为它与不是从该标签生成的标签相关联。2/ 资源文件被上传,因此不一定与源代码相关。 注:一个空的发布版本将自动包含已标记提交的源代码的tgz和zip版本。 - dirkjot
@dirkjot 谢谢你。我已经将你的评论包含在答案中以增加可见性。 - VonC
1
@Noum 感谢您提供最新的URL。非常感谢。 - VonC

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接