gh release create
gh release create [<tag>] [<files>...]
为存储库创建新的 GitHub 版本(Release)。
新的版本,你可能要上传一系列的资源文件。要定义资源的显示标签,请在文件名之后,附加以#
开头的文本。
如果匹配的 git tag 还不存在,那么将从默认分支的最新状态自动创建一个。使用--target
来覆盖这个。要在发布后,在本地获取新 tag ,请执行以下操作git fetch --tags origin
。
要从带注释的 git tag 创建发行版,首先使用 git 在本地创建一个,然后将 tag 推送到 GitHub,然后运行此命令。
使用自动生成的 release 说明时,也会自动生成 release 标题,除非,明确传递了标题。通过使用 notes 参数,可以在自动生成的备注前,添加其他 release 说明。
Options
--discussion-category <string>
- 开始指定主题分类的讨论
-d
,--draft
- 一个草稿版本
--generate-notes
- 自动生成,release 的 标题与笔记
-n
,--notes <string>
- Release 笔记
-F
,--notes-file <file>
- 用文件,读笔记 (use "-" to read from standard input)
-p
,--prerelease
- 预览版
--target <branch>
- 指定的分支或是完整的 commit SHA (default: main branch)
-t
,--title <string>
- Release 标题
Options inherited from parent commands
-R
,--repo <[HOST/]OWNER/REPO>
- 使用 [HOST/]OWNER/REPO 格式,选择另一存储库
Examples
# 交互式创建一个 release
$ gh release create
# 交互式创建一个 v1.2.3 release
$ gh release create v1.2.3
# 非交互式创建一个 release
$ gh release create v1.2.3 --notes "bugfix release"
# 使用自动生成 Release 笔记
$ gh release create v1.2.3 --generate-notes
# 使用文件,给出 Release 笔记
$ gh release create v1.2.3 -F changelog.md
# 上传 dist 目录下,所有的 tgz,作为资源
$ gh release create v1.2.3 ./dist/*.tgz
# 上传一个资源,带标签
$ gh release create v1.2.3 '/path/to/asset.zip#My display label'
# 创建一个 release,并开启讨论
$ gh release create v1.2.3 --discussion-category "General"