Github Release On Push Action 使用教程

1、项目介绍

Github Release On Push Action 是一个用于自动化版本发布的 GitHub Action。它通过监听主分支上的提交事件,自动生成 Git 标签和 GitHub 发布。该 Action 支持灵活的版本提升策略,并能够自动生成发布说明。

主要功能

  • 自动生成 Git 标签和 GitHub 发布:当有新的提交推送到主分支时,自动创建 Git 标签和 GitHub 发布。
  • 灵活的版本提升策略:支持通过 Pull Request 标签来覆盖默认的版本提升策略(如 major、minor、patch)。
  • 自动生成发布说明:自动生成发布说明,列出自上次发布以来的所有提交。

2、项目快速启动

安装步骤

  1. 创建 GitHub Action 工作流文件:在你的 GitHub 仓库中,创建一个 .github/workflows/release.yml 文件。

  2. 配置工作流:在 release.yml 文件中添加以下内容:

name: Release on Push

on:
  push:
    branches:
      - master

jobs:
  release-on-push:
    runs-on: ubuntu-latest
    env:
      GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
    steps:
      - uses: rymndhng/release-on-push-action@master
        with:
          bump_version_scheme: minor
  1. 提交并推送:将 release.yml 文件提交并推送到 GitHub 仓库的主分支。

配置说明

  • bump_version_scheme:指定版本提升策略,可选值为 majorminorpatch
  • GITHUB_TOKEN:使用 GitHub 提供的默认令牌,用于访问 GitHub API。

3、应用案例和最佳实践

应用案例

假设你有一个开源项目,希望每次有新的提交推送到主分支时,自动生成一个新的版本发布。通过使用 Github Release On Push Action,你可以轻松实现这一目标。

最佳实践

  1. 版本控制:使用 Git 标签来管理版本,而不是依赖于文件中的版本号。
  2. 自动化测试:在发布之前,确保所有测试都通过,以保证发布的质量。
  3. 文档更新:每次发布时,自动更新项目的文档,确保用户能够及时了解新版本的功能和变化。

4、典型生态项目

相关项目

  • GitHub Actions:用于自动化 CI/CD 流程的 GitHub 原生工具。
  • Semantic Versioning:用于版本控制的语义化版本规范。
  • GitHub Releases:GitHub 提供的发布管理工具,用于创建和管理项目的发布版本。

集成示例

假设你有一个 Node.js 项目,希望在每次发布时自动更新 package.json 中的版本号,并发布到 npm。你可以结合 Github Release On Push Actionnpm publish 来实现这一目标。

name: Release and Publish

on:
  push:
    branches:
      - master

jobs:
  release-and-publish:
    runs-on: ubuntu-latest
    env:
      GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
      NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
    steps:
      - uses: actions/checkout@v2
      - uses: rymndhng/release-on-push-action@master
        with:
          bump_version_scheme: minor
      - run: npm publish
        env:
          NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}

通过这种方式,你可以实现从代码提交到版本发布再到 npm 发布的全自动化流程。

Logo

免费领 200 小时云算力,进群参与显卡、AI PC 幸运抽奖

更多推荐