Lint

规则

  1. ESLint 规范 (集团规则 + 团队规则)
  2. Commit Message 规范
    1. angular 规范
    2. 团队规范: 每个 PR 需要至少关连一个 Aone 任务
  3. 分支和合并规范
    1. dev 分支走预发,所有需求开发从 dev 分支签出。
    2. master 分支默认上正式环境。但是有班车机制,不是每次正式发布之后的代码都会直接合并 master,需要所有 region 全拉平之后才会合并至 master。
    3. 团队的核心模块需要 2 个人 check 之后才可以通过;其余 1 人通过即可。
    4. 合并代码推荐使用 squash 方式,但是不强制。
  4. Husky + lint-staged + commitlint + Prettier (本地开启)

Git

几种合并方式的区别

  1. merge 会多出一个 merge commit,commit message 会保留。坏处是 commit 记录中会多出很多 merge commit 节点。
  2. rebase 会将本地 pr 的所有 commit 重新合并至目标分支,commit message。坏处是多人开发时,可能会需要后开发的同学,强制推送自己的分支。
  3. squash 会将本地 pr 的所有 commit 压成一个 commit,然后再合并至目标分支,commit message 可以重新定义一遍。 VS Code 默认采用的就是这种方式。好处是 commit 记录会非常清晰,会少很多测试 commit,坏处是如果有多个人同时在开发,会导致 commit 记录非常混乱,不利于代码 review。
Last Updated:
Contributors: yiliang114