使用VSTS的Git进行版本控制(六)——拉取请求

在将代码合并到主干之前,拉取请求让团队对特性分支的更改提供反馈。审阅人可以通过建议修改留下评论,并投票批准或拒绝代码。

任务1:在Visual Studio的Team Explorer中创建拉取请求

1.在Visual Studio中打开Team Explorer,进入Branches页面。签出dev分支。如果没有分支,创建一个。

2.打开01_Demos_ASPNET5解决方案

3.展开MyHealth.API项目,进入Controllers文件夹,修改任何一个控制器文件,同步变更推送提交,从其他分支拉取变更。

4.现在,变更会更新到远程开发分支。

5.打开Team Explorer Home页面

6.从Team Explorer 面板打开Pull requests。从开发分支提交变更到主干。

7.选择New Pull Request连接打开浏览器窗口,在web上创建一个新的拉取请求。

8.可以关联工作项并描述在分支上的变更,以便其他人更容易地看到你正在尝试解决的问题。还可以添加评审人员。

9.点击New Pull Request创建一个新的拉取请求。将会看到概述。可以批准、添加评论或做其他的更多操作。

任务2:管理拉取请求

在web上的Code视图中的Pull Requests选项卡,管理自己的或分配给你的拉取请求。

1.在web上查看repo,打开Pull Request视图。选择Active,以显示当前repo的所有有效的拉取请求。还可以通过选择Completed(已完成的)或Abandoned(放弃的)拉取请求,拉取已关闭的拉取请求历史记录。

2.选择已分配给你的任一拉取请求。Overview选项卡显示该拉取请求的当前状态。

3.查看标题、描述和讨论,以了解所建议的更改,并查看其他评审人员提出的问题。

4.选择Files选项卡,以查看请求的源和目标分支之间的最大更改的差异。

5.从All changes下拉菜单中,查看已推送到拉取请求的源分支以前版本的代码。每当在Team Services中更新分支时,在下拉菜单和Updates选项卡中就会添加一个新版本到列表中。

6.找到要添加新注释的文件。

7.在拉取请求中添加注释提出建议,回复之前的评论,和指出修改建议的问题。

8.可以更改Tree视图查看源代码的结构或仅列出文件。还可以查看所有评论/活动评论/隐藏评论。

9.使用Updates选项卡浏览作者的更改列表。

10.可以在Commits选项卡中选择和查看在分支中提交的更改。

11.返回到Files选项卡。点击comments,查看修改后的文件的详情和评论者的评论。

新评论从Active(活动)状态开始,可以使用评论中的下拉菜单更新为:
Active:评论仍在评审中。
Resolved:评论中提出的问题已经解决。
Pending:评论中的问题将被处理,但是还没有被修复。
Won’t Fix:注意评论中的建议,但是不在这个拉取请求中做出更改来解决它。
Closed:该评论的讨论已关闭。

12.在拉取请求视图的右上角单击Approve

默认选项是Approve,但是可以从下拉菜单中选择其他选项:
Approve with suggestions:同意拉取请求,提供可选的建议以改进代码。
Waiting for the author:不批准更改,请作者评审该评论。当已经解决了关注点,在重新检查代码后,作者应该让你知道,。
Rejected:更改不被接受。如果以这种方式投票,应该在拉取请求中留下评论,详细说明拒绝更改的原因。

13.在拉请求视图的右上角单击Complete

14.输入用于合并提交的信息,并在接下来的对话框中更新拉取请求描述。可以选择压缩合并拉取请求,并在合并完成后删除源分支。

Squash merging是一个合并选项,当完成一个拉取请求时,允许压缩主题分支的Git历史。与主题分支上的每个提交都添加到默认分支的历史中不同,squash merge会将所有文件更改添加到默认分支上的单个新提交中。squash merge使默认分支历史保持干净,并且易于追溯,而无需要求团队进行任何工作流更改。

15.点击Complete合并。会看到一个成功消息。

16.从web回到Pull Requests,应该看到completed选项卡下完成的拉取请求。

17.打开文件视图并选择master 分支 | History,以确保变更成功合并。

18.主干分支成功更新。

动手实验

类别 文章名称
概述 Visual Studio Team Services 动手实验
计划 使用Visual Studio Team Services敏捷规划和项目组合管理(一)使用团队、区域和迭代
使用Visual Studio Team Services敏捷规划和项目组合管理(二)VSTS中的工作项
使用Visual Studio Team Services敏捷规划和项目组合管理(三)使用Kanban板
使用Visual Studio Team Services敏捷规划和项目组合管理(四)冲刺计划和任务板
使用Visual Studio Team Services敏捷规划和项目组合管理(五)组合管理
使用Visual Studio Team Services敏捷规划和项目组合管理(六)——VSTS仪表盘的使用
使用Visual Studio Team Services敏捷规划和项目组合管理(七)——流程定制
Microsoft Teams 集成 (协作, 沟通 和 行为)
使用VSTS的Git进行版本控制(一)——复制现有仓库)
使用VSTS的Git进行版本控制(二)——提交保存工作)
使用VSTS的Git进行版本控制(三)——评审历史记录)
使用VSTS的Git进行版本控制(四)——在Visual Studio中管理分支)
使用VSTS的Git进行版本控制(五)——从Team Services Portal管理分支)
相关资料 Visual Studio Team Services Demo Generator简介
参考文章 Version Control with Git using Visual Studio Team Services

使用VSTS的Git进行版本控制(六)——拉取请求的更多相关文章

  1. 使用VSTS的Git进行版本控制(七)——管理仓库

    使用VSTS的Git进行版本控制(七)--管理仓库 在团队项目中创建Git repo管理项目的源代码.每个Git repo都有自己的权限和分支,可以与项目中的其他工作隔离开来. 任务1:从web门户创 ...

  2. 使用VSTS的Git进行版本控制(四)——在Visual Studio中管理分支

    使用VSTS的Git进行版本控制(四)--在Visual Studio中管理分支 可以从web版Team Services Git repo 的Branches视图中管理工作.定制视图来跟踪最关注的分 ...

  3. 使用VSTS的Git进行版本控制(三)——评审历史记录

    使用VSTS的Git进行版本控制(三)--评审历史记录 Git使用存储在每个提交中的父引用信息来管理开发的完整历史记录.评审该提交历史记录,能够找出文件更改的时间,并确定代码版本之间的差异. Git使 ...

  4. 使用VSTS的Git进行版本控制(二)——提交保存工作

    使用VSTS的Git进行版本控制(二)--提交保存工作 当对文件进行更改时,Git将在本地仓库中记录更改.可以通过选择变更来提交的对应更改.提交总是针对本地的Git仓库,因此不必担心提交是完美的,或者 ...

  5. 使用VSTS的Git进行版本控制(五)——从Team Services Portal管理分支

    使用VSTS的Git进行版本控制(五)--从Team Services Portal管理分支 任务1:创建新分支 1.登录Visual Studio Team Services账号 2.打开Code ...

  6. 使用VSTS的Git进行版本控制(一)——复制现有仓库

    使用VSTS的Git进行版本控制(一)--复制现有仓库 概述 Team Services支持两种类型的版本控制Git和Team Foundation Version Control (TFVC).以下 ...

  7. git从远程仓库拉取内容或向远程仓库上传内容

    一.将本地文件上传到远程仓库步骤 git init git add . git commit -m "初始框架" git remote add origin https://git ...

  8. Azure DevOps Server: 使用Rest Api获取拉取请求Pull Request中的变更文件清单

    需求: Azure DevOps Server 的拉取请求模块,为开发团队提供了强大而且灵活的代码评审功能.拉取请求中变更文件清单,对质量管理人员,是一个宝贵的材料.质量保障人员可以从代码清单中分析不 ...

  9. 创建一个项目并在GitHub上发出拉取请求

    1.第一步:创建存储库 创建新存储库: New repository 命名存储库 写一个简短的描述 选择使用自述文件初始化此存储库 2.第二步:创建一个分支 创建一个新分支 转到新的存储库hello- ...

随机推荐

  1. Liferay7 BPM门户开发之21: 理解消息总线(Message Bus)体系

    Liferay Message Bus提供了松耦合的消息发送接收机制(生产和消费的设计模式),用于本地服务,不支持远程服务,支持集群. 主要用途: 两个或多个插件之间的通讯. 在事件中发送搜索索引,比 ...

  2. 脚手架vue-cli系列三:vue-cli工程webpack的作用和特点

    Vue项目开发过程中,会因为很多不同的实际运用需求不断地对webpack配置进行修改,在此之前,我们需要对webpack有一个基本的认识,了解它到底能为我们做些什么 webpack是一个模块打包的工具 ...

  3. app操作的一些命令

    这里的操作都是在windows下,在android SDK安装好之后就可以连接实体手机或者模拟器操作 1.查看连接的手机或者模拟器 adb devices 结果如下: 2.查看某个app的包名和act ...

  4. Linux编程 1 (文件系统路径说明, 目录结构说明)

    一. Linux文件系统路径说明 熟悉windows系统的,都知道文件路径表示,如C:\User\rich\Documnets\test.doc. 在linux中目录称为虚拟目录(virtual di ...

  5. SQL 必知必会·笔记<14>更新和删除数据

    1. 更新数据 基本的UPDATE语句,由三部分组成: 要更新的表 列名和它们的新值 确定要更新那些行的过滤条件 更新单列示例: UPDATE Customers SET cust_email = ' ...

  6. Tomcat8源码笔记(四)Server和Service初始化

    上一章 简单说明下Tomcat各个组件: Server:服务器,Tomcat服务器,一个Tomcat只有一个Server组件; Service:业务层,是Server下最大的子容器,一个Server可 ...

  7. windows下mysql-5.7.18安装

    在官网下载了mysql压缩包,按照官网:https://dev.mysql.com/doc/refman/5.7/en/windows-installation.html的教程安装,但是出错,后面根据 ...

  8. mysql查看执行sql语句的记录日志

    开启日志模式 -- 1.设置 -- SET GLOBAL log_output = 'TABLE';SET GLOBAL general_log = 'ON';  //日志开启 -- SET GLOB ...

  9. 【测试记录】EF插入查询性能

    介绍     背景什么就不提了,无外乎出现了大数据需要处理.简单的说就是我测试了EF正常的插入以及一个优化小方式而已,然后做了查询记录.其余没有什么,写这篇只是为了记录结果方便以后数据参考吧. 代码介 ...

  10. [PHP] 数据结构-循环链表的PHP实现

    1.将单链表中终端结点的指针端由空指针改为指向头结点,单循环链表,循环链表和单链表的主要差异就在于循环的判断条件上原来是判断p->next是否为空,现在则是p->next不等于头结点,则循 ...