gh release create
gh release create [<tag>] [<files>...]
为存储库创建新的 GitHub 版本。
可以给出要上传到新版本的资产文件列表。要为资产定义显示标签,请在文件名后附加以 # 开头的文本。
如果匹配的 git 标签尚不存在,则将从默认分支的最新状态自动创建一个。使用 --target 指向不同的分支或提交以进行自动标签创建。使用 --verify-tag 在标签不存在的情况下中止发布。要在发布后在本地获取新标签,请执行 git fetch --tags origin。
要从带注释的 git 标签创建版本,请先在本地使用 git 创建一个,将标签推送到 GitHub,然后运行此命令。使用 --notes-from-tag 自动从带注释的 git 标签生成版本说明。
使用自动生成的版本说明时,除非显式传递标题,否则也将自动生成版本标题。可以使用 --notes 标志将其他版本说明附加到自动生成的说明之前。
选项
-
--discussion-category <string> - 在指定类别中启动讨论
-d,--draft- 将版本保存为草稿,而不是发布它
-
--generate-notes - 自动为版本生成标题和说明
-
--latest - 将此版本标记为“最新”(默认 [根据日期和版本自动设置])。--latest=false 显式地不设置为最新
-n,--notes <string>- 版本说明
-F,--notes-file <file>- 从文件读取版本说明(使用“-”从标准输入读取)
-
--notes-from-tag - 自动从带注释的标签生成说明
-
--notes-start-tag <string> - 用作生成版本说明的起点的标签
-p,--prerelease- 将版本标记为预发布
-
--target <branch> - 目标分支或完整提交 SHA(默认 [主分支])
-t,--title <string>- 版本标题
-
--verify-tag - 如果 git 标签在远程存储库中不存在,则中止
从父命令继承的选项
-R,--repo <[HOST/]OWNER/REPO>- 使用 [HOST/]OWNER/REPO 格式选择另一个存储库
别名
gh release new
示例
Interactively create a release
$ gh release create
Interactively create a release from specific tag
$ gh release create v1.2.3
Non-interactively create a release
$ gh release create v1.2.3 --notes "bugfix release"
Use automatically generated release notes
$ gh release create v1.2.3 --generate-notes
Use release notes from a file
$ gh release create v1.2.3 -F changelog.md
Don't mark the release as latest
$ gh release create v1.2.3 --latest=false
Upload all tarballs in a directory as release assets
$ gh release create v1.2.3 ./dist/*.tgz
Upload a release asset with a display label
$ gh release create v1.2.3 '/path/to/asset.zip#My display label'
Create a release and start a discussion
$ gh release create v1.2.3 --discussion-category "General"