发布版本更新Skill release-bump

发布版本更新技能用于自动化软件版本发布流程,涉及提升版本号、运行测试、代码提交和标签推送,以触发持续集成和自动化发布。此技能适用于提高软件开发效率,涵盖DevOps实践、版本管理、自动化构建和发布管理。关键词:版本发布、软件发布、DevOps、CI/CD、自动化测试、版本管理、开源项目发布、持续集成、持续交付。

DevOps 0 次安装 2 次浏览 更新于 3/14/2026

name: release-bump description: 用于在新的发布中提升 ralph-orchestrator 版本,在修复已提交并准备发布时使用

发布版本更新

概述

提升版本并触发 ralph-orchestrator 的发布。所有版本都位于工作空间 Cargo.toml 文件中——个别 crate 通过 version.workspace = true 继承版本。

与用户确认新版本。一旦版本提升提交被推送,跟踪发布的进度。

快速参考

步骤 命令/操作
1. 提升版本 编辑 Cargo.toml:替换所有 version = "X.Y.Z"(7 个位置)
2. 构建 cargo build(更新 Cargo.lock)
3. 测试 cargo test
4. 提交 git add Cargo.toml Cargo.lock && git commit -m "chore: bump to vX.Y.Z"
5. 推送 git push origin main
6. 标签 git tag vX.Y.Z && git push origin vX.Y.Z

版本位置(均在 Cargo.toml 中)

# 约第 17 行 - 工作空间版本
[workspace.package]
version = "X.Y.Z"

# 约第 113-118 行 - 内部 crate 依赖
ralph-proto = { version = "X.Y.Z", path = "crates/ralph-proto" }
ralph-core = { version = "X.Y.Z", path = "crates/ralph-core" }
ralph-adapters = { version = "X.Y.Z", path = "crates/ralph-adapters" }
ralph-tui = { version = "X.Y.Z", path = "crates/ralph-tui" }
ralph-cli = { version = "X.Y.Z", path = "crates/ralph-cli" }
ralph-bench = { version = "X.Y.Z", path = "crates/ralph-bench" }

提示: 使用编辑工具,开启 replace_all: true,将 version = "OLD" 替换为 version = "NEW",一次性更新所有 7 个位置。

CI 自动执行的操作

一旦推送标签,.github/workflows/release.yml 被触发并执行:

  1. 创建 GitHub Release 并自动生成笔记
  2. 为 macOS(arm64, x64)和 Linux(arm64, x64)构建二进制文件
  3. 将构件上传到 GitHub Release
  4. 发布到 crates.io(按依赖顺序)
  5. 发布到 npm 为 @ralph-orchestrator/ralph

常见错误

错误 修复
只更新 workspace.package.version 必须更新所有 7 个位置,包括内部依赖
忘记运行测试 提交前始终运行 cargo test
手动创建 release,使用 gh release create 只需推送标签 - CI 会创建 release 和构件
推送标签先于主分支 先推送主分支,然后推送标签