22title : 研发协作流程
33sidebar_position : 2
44---
5+
56## 代码风格
7+
68引擎项目配置了 eslint 和 stylelint,在每次 git commit 前都会检查代码风格,假如有报错,请修改后再提交。(** 严禁 -n 提交,-n 也逃脱不了 github workflow 的 lint 检查,放弃吧,骚年~ ** )
79
810## 测试机制
11+
912每次提交代码前,务必本地跑一次单元测试,通过后再提交 MR。
1013
1114假如涉及新的功能,需要** 补充相应的单元测试** ,目前引擎核心模块的单测覆盖率都在 80%+,假如降低了覆盖率,将会不予以通过。
@@ -15,12 +18,15 @@ sidebar_position: 2
15181 . 项目根目录下执行 npm run build
16192 . 只改了一个包,比如 designer,则在 designer 目录下,执行 npm test
17203 . (or)改了多个包,则在根目录下执行 npm test
21+
1822## commit 风格
23+
1924几点要求:
2025
21261 . commit message 格式遵循 [ ConvensionalCommits] ( https://www.conventionalcommits.org/en/v1.0.0/#summary )
2227
2328 <img src =" https://img.alicdn.com/imgextra/i3/O1CN01M9UzVM1iqYpyxECdV_!!6000000004464-2-tps-2070-594.png " width =" 700 " />
29+
24302 . 请按照一个 bugfix / feature 对应一个 commit,假如不是,请 rebase 后再提交 MR,不要一堆无用的、试验性的 commit。
2531
2632好处:从引擎的整体 commit 历史来看,会很清晰,** 每个 commit 完成一件确定的事,changelog 也能自动生成** 。另外,假如因为某个 commit 导致了 bug,也很容易通过 rebase drop 等方式快速修复。
@@ -30,8 +36,8 @@ sidebar_position: 2
3036- main 分支,最稳定的分支,跟 npm latest 包的内容保持一致
3137- develop 分支,开发分支,拥有最新的、已经验证过的 feature / bugfix,Pull Request 的** 目标合入分支**
3238- release 分支
33- - 正式发布分支,命名规则为 release/x.y.z,一般从 develop 拉出来进行发布,x.y.z 为待发布的版本号
34- - beta 发布分支,命名规则为 release/x.y.z-beta(\. \d+)?,可以快速验证修改,发布 npm beta 版本。
39+ - 正式发布分支,命名规则为 release/x.y.z,一般从 develop 拉出来进行发布,x.y.z 为待发布的版本号
40+ - beta 发布分支,命名规则为 release/x.y.z-beta(\. \d+)?,可以快速验证修改,发布 npm beta 版本。
3541
3642验证通过后,因为 beta 发布分支上会存在无用的 commit(比如 lerna 修改 package.json 这种),所以不直接 PR 到 develop,而是从 develop 拉分支,从 beta 发布分支 cherry pick 有用的 commit 到新分支,然后 PR 到 develop。
3743
@@ -47,11 +53,12 @@ sidebar_position: 2
4753- 特殊情况紧急迭代随时发
4854- 大 Feature 迭代,每年 2 - 4 次
4955
50-
5156### 发布步骤
57+
5258> ** 发布需要权限,如果提 PR 之后着急发布可以** [ ** 加入贡献者交流群** ] ( ../participate/#核心贡献者交流 ) ** 。**
5359
5460#### 发正式版
61+
5562步骤如下(以发布 1.0.0 版本为例):
5663
57641 . git checkout develop
@@ -82,6 +89,7 @@ sidebar_position: 2
8289如果是发布 beta 版本,步骤如下(以发布 1.0.1 版本为例):
8390
8491#### 发某 y 位版本首个 beta,如 1.1.0-beta.0
92+
85931 . 拉 develop 分支
8694 ``` bash
8795 git checkout develop
@@ -110,6 +118,7 @@ sidebar_position: 2
110118 ```
111119
112120#### 发某 z 位版本首个 beta,如 1.0.1-beta.0
121+
1131221 . 拉 develop 分支
114123 ``` bash
115124 git checkout develop
@@ -138,6 +147,7 @@ sidebar_position: 2
138147 ```
139148
140149#### 发某版本非首个 beta,如 1.0.1-beta.0 -> 1.0.1-beta.1
150+
1411511 . 切换到 release 分支
142152 ``` bash
143153 git checkout release/1.0.1-beta
@@ -150,7 +160,7 @@ sidebar_position: 2
150160 ``` bash
151161 npm run build
152162 ```
153- 4 . 发布,此处需有 @alilc scope 发包权限 *** 此处命令与发首个 beta 时有变化 * **
163+ 4 . 发布,此处需有 @alilc scope 发包权限 ** _ 此处命令与发首个 beta 时有变化 _ **
154164 ``` bash
155165 npm run pub:prerelease
156166 ```
@@ -160,9 +170,8 @@ sidebar_position: 2
160170 tnpm run syncOss
161171 ```
162172
163-
164-
165173## DEMO 发布机制
174+
1661751 . ** 修改版本号**
167176 手动修改 package.json 的版本号
1681772 . ** build**
@@ -182,6 +191,3 @@ sidebar_position: 2
182191 tnpm run sync
183192 tnpm run syncOss
184193 ```
185-
186- ** 官网生效**
187- 需要在通过阿里内部系统更新 demo 版本
0 commit comments