VSCode 下的 PR 流程

VSCode 下的 PR 流程

  1. VSCode 安装 Github Pull Request 插件
  2. 于源代码管理处点击创建拉取请求
  3. 提交 PR 后等待其余协同开发者审核

Commit/PR 规范

参考:Angular commit 规范

提交信息包括三个部分:

  • Header
  • Body
  • footer
    其中 header 为必填,其余可省略

Header 部分只有一行,包含两个字段,均必填

1
<type>: <subject>
  1. type:说明 commit 的类别,可以使用如下类别
  • feat:新功能(feature)
  • fix:修补 bug
  • doc:文档(documentation)
  • refactor:重构(不属于 feat 和 fix 的代码变动)
  • test:增加测试
  • chore:构建过程或辅助工具的变动
  1. subject:对 commit 目的的简短描述
  • 以动词开头,使用第一人称现在时(改变 √ 改变了 ×)
  • 结尾不加句号(。)

Body

Body 部分是对本次 commit 的详细描述,可以分成多行。下面是一个范例:

1
2
3
4
5
6
7
More detailed explanatory text, if necessary.  Wrap it to 
about 72 characters or so.

Further paragraphs come after blank lines.

- Bullet points are okay, too
- Use a hanging indent

注意:应注意代码变动的动机,以及与以前行为的对比

Footer 部分应该包含:

  1. Breaking Changes
  2. 关闭 issue

Breaking Changes

如果当前代码与上一个版本不兼容,则 Footer 部分以 BREAKING CHANGE 开头,后面是对变动的描述、以及变动理由和迁移方法。

issue

  1. 通过 commit 关联 issue :如果当前提交信息关联了某个issue,那么可以在 Footer 部分关联这个 issue:
1
issue #2
  1. 通过commit关闭issue,当提交到默认分支时,提交信息里可以使用 fix/fixes/fixed , close/closes/closed 或者 resolve/resolves/resolved等关键词,后面为 issue 编号,关闭对应Issue:
1
Closes #1

注意:如果不是提交到默认分支,那么并不能关闭这个issue,但是在这个issue下面会显示相关的信息表示曾经想要关闭这个issue,当这个分支合并到默认分支时,就可以关闭这个issue了。

PR 模板

推荐路径:.github/pull_request_template.md

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
# PR 标题
<!--
格式为 type:subject(中文分号)
- type:说明 commit 的类别,可以使用如下类别
- - feat:新功能(feature)
- - fix:修复 bug
- - doc:文档(documentation)
- - refactor:重构(不属于 feat 和 fix 的代码变动)
- - build:构建打包
- - test:增加测试
- - chore:构建过程或辅助工具的变动
- - revert:恢复
- subject:对 commit/PR 目的的简短描述
- - 以动词开头,使用第一人称现在时(改变 √ 改变了 ×)
- - 结尾不加句号(。)

例:
feat:添加实时表格
bug:修复实时表格小数点位问题
-->

## 内容
<!--
是对本次 commit 的详细描述,可以分成多行。下面是一个范例

More detailed explanatory text, if necessary. Wrap it to
about 72 characters or so.

Further paragraphs come after blank lines.

- Bullet points are okay, too
- Use a hanging indent

应注意代码变动的动机、与以前行为的对比
-->

## 影响范围
<!--
描述这个PR对现有代码的影响。例如:
- 影响哪些组件或功能
- 是否引入了任何可能的性能问题
- 是否有任何向后兼容的问题
-->

## 附加信息
<!--
包含 Breaking Changes 和关闭 issue
- Breaking Changes: 当前代码是否与上一个版本不兼容,如有,需包含对变动的描述、以及变动理由和迁移方法
- issue:是否有关联的 issue,是否需关闭 issue
- - 关联 issue : issue #42
- - 关闭 issue : closes #42
-->

## 请求审查
<!-- @提及需要审查这个PR的团队成员或团队。 -->