Skip to content

Commit d98b481

Browse files
committed
chore: 添加发版流程说明
[skip ci] [skip netlify]
1 parent 4291af8 commit d98b481

File tree

1 file changed

+20
-4
lines changed

1 file changed

+20
-4
lines changed

CONTRIBUTING.md

Lines changed: 20 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -48,18 +48,34 @@ ex-caller
4848

4949
使用 Git 管理版本。
5050

51-
一个 commit 做一件事,建议添加 GPG 签名,无需添加 `Signoff`。Commit message 遵循[约定式提交 1.0.0](https://www.conventionalcommits.org/zh-hans/v1.0.0/)
51+
一个 commit 做一件事,非 CI 的提交必须添加 GPG 签名,无需添加 `Signoff`。Commit message 遵循[约定式提交 1.0.0](https://www.conventionalcommits.org/zh-hans/v1.0.0/)
5252

5353
每个 tag 代表一个版本,以 `v` 开头,加上版本号,无需 GPG 签名。
5454

55-
有两个常驻分支,除此之外都是用于 PR 的临时分支:
55+
有 2~3 个常驻分支,除此之外都是用于 PR 的临时分支:
5656

5757
- `main` (default):最新的代码,可以推送,可以 commit
5858
- `latest`:最新的已发布稳定版的代码,禁止除 CI 以外的推送
59-
- `insider`:最新的已发布先行版的点名,禁止除 CI 以外的推送
59+
- 如果有活跃的先行版的,代码放在 `insider` 分支,禁止除 CI 以外的推送
6060

6161
常驻分支必须拥有线性历史记录。
6262

63-
版本发布遵循 [SemVer 2.0.0](https://semver.org/lang/zh-CN/),但是 semver 针对的是 dependencies,所以大部分情况仍然自由心证。
63+
版本号格式遵循 [SemVer 2.0.0](https://semver.org/lang/zh-CN/),但是 semver 针对的是 dependencies,所以大部分情况仍然自由心证。
6464

6565
在一个版本发布前,可以在 [Canary 环境](https://main--ex-caller.netlify.app/)查看 `main` 分支上的代码效果。
66+
67+
发版的一般流程如下:
68+
69+
1. 更新 `CHANGELOG.md`
70+
2. 更新版本号
71+
- `package.json` > `version`
72+
- `src-tauri/tauri.conf.json` > `version`
73+
- `src-tauri/Cargo.toml` > `package` > `version`
74+
- `src-tauri/Cargo.lock` > 依赖项 `ex-caller` > `package` > `version`
75+
3. commit,格式如:`release: v1.0.0`
76+
4. tag,格式如:`v1.0.0`
77+
5. push 到 GitHub
78+
6. 在 GitHub 创建 release,标题如 `ExCaller v1.0.0`,内容为 (1) 中增加的部分
79+
7. 发布 release 后,构建流程自动启动,等待完成后查看 release assets
80+
81+
如果版本构建失败,则可以继续 commit 以修复问题,并把 tag 更新到最终成功发版的 commit。

0 commit comments

Comments
 (0)