面向 Go 项目的发布自动化工具,负责构建、打包并发布二进制文件到 GitHub 及各类包管理与镜像仓库。
softprops/action-gh-release
用于在 GitHub Actions 中创建 GitHub Release 并上传构建产物的 Action,支持 Linux、Windows 和 macOS。
- Star
- 5,794
- Fork
- 646
- 未关闭 Issue
- 123
- 最近提交
- 前天
这是什么?
action-gh-release 是一个 GitHub Action,用于为 tag 创建 GitHub Release 并上传构建产物。通常将它作为构建之后的一个步骤加入工作流,使流水线生成的二进制文件、压缩包或校验和自动附加到 Release 上。
通过 files 输入项可以传入以换行分隔的 glob 模式来匹配要上传的文件;release 说明可以通过 body_path 从文件读取,也可以使用 GitHub 自动生成的更新日志。它支持草稿和预发布标记、复用同一 tag 已有的 Release、追加到已有正文、创建关联的 Discussion,以及为自动生成的说明指定比较基准 tag。输出项包括 Release 的 URL、ID、上传地址,以及已上传资源的 JSON 列表。
该 Action 可在 Linux、Windows 和 macOS 运行器上使用。v3 版本基于 Node 24 运行,需要工作流令牌具有 contents: write 权限。
核心功能
- 01为 tag 创建 GitHub Release,已存在时则更新该 Release。
- 02通过 glob 模式上传匹配的文件,并支持指定工作目录。
- 03可从文件读取 release 说明,或使用 GitHub 自动生成的更新日志。
- 04支持草稿、预发布以及 make_latest 等发布设置。
- 05可在 Linux、Windows 和 macOS 运行器上运行。
- 06输出 Release 的 URL、ID、上传地址以及已上传资源的信息。
适用场景
- 推送版本 tag 后,将 CI 构建出的二进制文件发布到 GitHub Release。
- 自动为每个 Release 附加校验和或打包后的压缩文件。
- 在打 tag 的构建中,从 changelog 文件或 GitHub 自动生成的说明生成 release 正文。
快速上手
- 1
在工作流文件中添加发布步骤
uses: softprops/action-gh-release@v3 - 2
将发布步骤限定为标签推送,并在 files 中列出要上传的资源
使用前须知
- 仅能在 GitHub Actions 工作流中运行,不能作为独立工具使用。
- 若要为其他仓库创建发布,需要具有相应权限的个人访问令牌。
收录于专题
标签
常见问题
- action-gh-release 是什么?
- 用于在 GitHub Actions 中创建 GitHub Release 并上传构建产物的 Action,支持 Linux、Windows 和 macOS。 action-gh-release 是一个 GitHub Action,用于为 tag 创建 GitHub Release 并上传构建产物。通常将它作为构建之后的一个步骤加入工作流,使流水线生成的二进制文件、压缩包或校验和自动附加到 Release 上。
- action-gh-release 可以免费使用吗?用的什么许可证?
- action-gh-release 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
- action-gh-release 还在维护吗?
- 活跃维护中。action-gh-release 最近一次提交是在 2026年11月5日。
- action-gh-release 适合用来做什么?
- 推送版本 tag 后,将 CI 构建出的二进制文件发布到 GitHub Release。 自动为每个 Release 附加校验和或打包后的压缩文件。 在打 tag 的构建中,从 changelog 文件或 GitHub 自动生成的说明生成 release 正文。
- action-gh-release 怎么安装和运行?
- 在工作流文件中添加发布步骤: uses: softprops/action-gh-release@v3 将发布步骤限定为标签推送,并在 files 中列出要上传的资源
- 在哪里获取 action-gh-release?
- 源代码和安装说明在 GitHub 上:https://github.com/softprops/action-gh-release
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
一个 GitHub Action,自动维护发布 PR(版本号与 CHANGELOG),合并后打 tag 并创建 GitHub Release。
基于 GitHub Actions 的部署动作,可自动将项目发布到 GitHub Pages,输出可推送到任意分支。
根据提交信息自动计算语义化版本号、生成变更日志并发布软件包,适用于 CI 流程。
一款声明式 GitOps 持续交付工具,可将 Kubernetes 应用同步为 Git 仓库中定义的状态。
基于 Go 编写的自托管 CI/CD 与 DevOps 自动化平台,以流水线、任务和触发器串联工作流。