1
0

feat: make version-bump 默认 BUMP=patch,无需显式传参

This commit is contained in:
2026-05-05 04:32:38 +08:00
parent bc7a7c6e81
commit 32f48777f3
2 changed files with 12 additions and 2 deletions

View File

@@ -51,8 +51,8 @@ version-sync:
version-check:
go run ./versionctl check
version-bump: BUMP ?= patch
version-bump:
@test -n "$(BUMP)$(SET_VERSION)" || (printf '用法: make version-bump BUMP=major|minor|patch 或 make version-bump SET_VERSION=x.y.z\n' && exit 1)
@git diff --quiet HEAD || (printf '工作区不干净,请先提交或暂存改动\n' && exit 1)
$(eval _BUMP_ARG := $(if $(SET_VERSION),$(SET_VERSION),$(BUMP)))
$(eval _NEW_VERSION := $(shell go run ./versionctl bump $(_BUMP_ARG)))

View File

@@ -90,13 +90,18 @@
### Requirement: 版本升迁 Makefile 编排
`make version-bump` SHALL 编排完整的版本升迁流程:工作区干净检查 → `version bump`(含 sync/check/倒退检查)→ git add → git commit → git tag。
`make version-bump` SHALL 编排完整的版本升迁流程:工作区干净检查 → `version bump`(含 sync/check/倒退检查)→ git add → git commit → git tag。不传 `BUMP` 参数时 SHALL 默认执行 `BUMP=patch`
#### Scenario: 完整升迁流程
- **WHEN** 执行 `make version-bump BUMP=minor`,工作区干净,当前版本 `0.1.0`
- **THEN** Makefile SHALL 依次执行:工作区检查 → `version bump minor``git add VERSION frontend/``git commit -m "chore: 版本升迁 v0.2.0"``git tag v0.2.0`
#### Scenario: 不传 BUMP 默认 patch
- **WHEN** 执行 `make version-bump`,工作区干净,当前版本 `0.1.0`
- **THEN** Makefile SHALL 等效于执行 `make version-bump BUMP=patch`,将版本更新为 `0.1.1`
#### Scenario: 工作区不干净
- **WHEN** 执行 `make version-bump BUMP=minor`,但工作区有未提交的改动
@@ -107,6 +112,11 @@
- **WHEN** 执行 `make version-bump SET_VERSION=1.0.0`
- **THEN** Makefile SHALL 将 `1.0.0` 传递给 `version bump` 子命令
#### Scenario: SET_VERSION 优先于默认 BUMP
- **WHEN** 执行 `make version-bump SET_VERSION=2.0.0`
- **THEN** Makefile SHALL 使用 `SET_VERSION=2.0.0` 而非默认的 `BUMP=patch`
#### Scenario: 不自动推送
- **WHEN** `make version-bump` 成功完成