使用阿里云效平台的日常 git 协作方式 
我们项目的 git 团队协作,都可以用阿里云效平台完成。点此进入到我们的项目的代码库。
下面列举我们的 git 协作方式:
将自己的代码推送到云端 
以 vscode 为例子,在你的分支有尚未提交的内容,你应该及时的,迅速地提交自己已经写好的内容。
当前分支存在尚未提交的内容

你可以使用命令来推送,也可以用你 ide 说提供的方式提交。提交方式多种多样。
最保守的提交命令如下:
git push输入命令后,其命令行输入应该是这样的:
命令行提交的输出结果

及时获取最新的分支变更 
作为日常的操作,你应当及时获取最新的分支变更。
使用以下命令从远程仓库内拉取最新更改,并剪除本地仓库内过时的,已经被删除的远程分支。你并不需要在你自己的分支才能操作,在任意一个分支内都可以直接拉取远程仓库的内容。
全部的远程分支都会拉取对应的新内容。
git fetch -p你在控制台内应该看到这样的效果:
剪除本地 git 仓库过时的分支

前端组无需手动输入命令
如果你是前端组成员,你并需要手动输入该命令。前端项目已经封装好了一个名为 git:fetch 的命令。在 vscode 内点击运行该命令即可。
及时地将自己的修改合并到主分支 
作为组员,要及时地将自己的修改从自己的分支内,合并到主分支内。为了避免出错,我们应该使用云效的 pr 功能完成分支合并。
下面以成员功能分支 f1-ruancat 和小组主分支 f1 举例说明,云效 pr 过程如下:
进入到云效的 pr 界面 
点此进入 10wms 项目的云效 pr 界面。
云效 pr 界面

点击新建 pr 
点击右上角蓝色按钮,新建合并请求。
新建合并请求

pr 是什么意思?
我们开发圈常说的 pr 全称是 pull request,中文翻译是合并请求。
措辞声明
本文一律称呼为 pr,而不是中文全称合并请求。
选择正确的来源和目标 
我们的目的是让自己的修改合并到主分支内。来源选择自己的分支,目标选择对应业务的主分支。
以下图为例子,来源 f1-ruancat 分支,将会把自己的提交合并到 f1 主分支内。
选择正确的分支

认真填写 pr 表单 
- 你必须要填写好本次 pr 的标题。
 - 简要地填写本次一系列提交的描述。如果你懒,或者是你的 pr 标题足够言简意赅,你可以不写描述。
 - 务必选择合适的评审人。一般来说,选择你的组长。你的提交通常由你的组长来完成审核。
 
选择你的组长而不是自己
在本例子中,这里选择的不是组长,而是一个组员。这里为了演示才选择了自己。
不推荐大家漏填评审人
如果你漏填评审人,那么本次 pr 将不会推送给任何人来审批处置,你的 pr 很可能会晾在这里无人理会,然后拖延项目进度。
- 选择语义化的类标。根据你的提交选择合适的类型。
 - 点击确定按钮即可。
 
填写 pr 表单

作为一个组员,你的 pr 就结束了,接下来你只需要等待云效通知即可。
找到要评审的 pr 仅限评审人、组长 
如果你是评审人,或者是组长,你应该阅读一下的内容,学习如何 pr。
首先,如果其他成员主动将 pr 的评审人选择了你,那么你会收到云效邮件通知的。
- 评审人可以筛选自己。默认是筛选自己的。
 - 这里表示本次 pr 仅有一位评审人。且没有一个人评审通过。
 - 这里表示本次 pr 没有任何评论,也没有任何评论被处理。
 
在 pr 列表内找到评审待办

认识 pr 评审界面 
- 如果有明显的小问题,作为评审人,为了保证代码质量,你应该做出评论,要求成员整改。
 
可以不填写评论
如果你懒,或者赶时间避免卡进度。你可以不评论。直接到下一步。
- 如果没问题,你应该要点击
通过按钮。 - 你要先点击
通过后,才能点击下一步合并按钮。本次 pr 就结束了。 
pr 评审人的界面

通过评审 
你点击通过后,底部动态区会增加一条动态。
动态区通过评审

对增量提交做出进一步的评审检查 
假设你的组员在对应分支内确实有很多问题,然后你的组员后续有提交,你的评审页面会收到新的待审核版本。你应该要及时审批检查。
如下图,动态栏会增加新的待审核版本。
pr 出现了增量版本

免阅读直接通过 
如果你没有在云效内检查全部的文件,云效会提醒你是否要直接通过。如果你赶时间,不在乎质量,你可以通过。
提醒你未阅读

合并、结束本次 pr 
我们通常点击第一种合并模式。
选择合适的合并模式

编写本次提交的提交信息 
第一种合并模式会创建新的提交。你要填写正确的,语义化的提交内容。
一般来说你并不需要做什么改动。建议你保持原样即可。
填写提交页面

谨慎点选删除对方分支
这里的自动删除源分支,指的是删除来源分支。在本例子中指代的是 f1-ruancat 分支。如果这是一个完善的功能分支,标准做法就是直接选择删除该分支。从此云端仓库将不会出现 f1-ruancat 分支。
对应的组员在下一次拉取远程时,会注意到自己的本地分支没有上游。
你应该和你的组员沟通清楚,让你的组员不要再继续往 f1-ruancat 功能分支提交内容了,这个分支已经结束了。
你的组员应该:
- 删除 
f1-ruancat功能分支的本地分支。 - 在全新的 
f1主分支内,新建全新的功能分支,然后推送到远程,开始新的提交。 
在本地完成分支合并并推送到远程 不规范、易翻车、不推荐 
如果你对整个项目几乎完全掌控,能看懂组员的代码,并且在合并冲突的时候有效保留双方的修改。那么你可以使用速度更加快的方式完成分支合并。即 pr。
以下面的代码提交为例,现在我要快速将目标分支合并到主分支。
未完全合并的提交

git merge 命令 
进入到你的主分支,用 git merge 命令完成合并。
完成合并后可以按照此教程退出修改。
用 vscode 的 gitlens 完成合并 
除开直接使用 git merge 命令以外,你还可以使用各种工具完成合并,这里以 vscode 的 gitlens 举例说明:
先进入到目标主分支,在 gitlens 内选择要被合并的目标分支:
选择分支

选择合并方式。我这里默认使用第一个。
选择合适的合并方式。

填写必要的提交信息。我这里是直接关闭该页面。
填写合并信息

完成合并。记得提交合并信息到远程仓库。
完成
