项目使用 GitHub Actions 实现自动版本管理,配置文件:.github/workflows/auto-tag.yml
- Push 到
main分支时自动触发 - 排除
package.json更改(避免版本更新导致循环触发)
- 读取
package.json中的当前版本号 - 检查对应的 tag(如
v0.1.0)是否已存在 - 如果 tag 已存在:自动递增 patch 版本(
0.1.0→0.1.1),更新package.json并提交 - 如果 tag 不存在:直接使用当前版本
- 创建并推送新 tag
- 自动创建 GitHub Release(带自动生成的 release notes)
格式:v{major}.{minor}.{patch}
示例:v0.1.0、v0.1.1、v0.2.0、v1.0.0
自动流程只递增 patch 版本。如需升级 minor 或 major 版本,手动操作:
# 升级 patch: 0.1.0 → 0.1.1(通常自动完成)
npm version patch --no-git-tag-version
# 升级 minor: 0.1.x → 0.2.0
npm version minor --no-git-tag-version
# 升级 major: 0.x.x → 1.0.0
npm version major --no-git-tag-version然后提交并推送:
git add package.json
git commit -m "chore: bump version to x.x.x"
git pushGitHub Actions 会自动基于新版本创建 tag。
- 不要手动创建 tag:让 GitHub Actions 统一管理,避免版本混乱
- 版本回退:如需回退,先删除远程 tag,再修改
package.json版本号 - 跳过自动打 tag:在 commit message 中包含
[skip ci]可跳过所有 workflows