使用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. python修改文件中字符串并写入

    python实际工作中,做一些小工具,很方便.最近在做一个格式转换工具时候,用到了替换文件中特定字符串的 功能.当初没直接想出来,就在网上查了一下,做个记录,方便后续使用. # -*- coding: ...

  2. Spring Boot 集成 Mybatis 实现双数据源

    这里用到了Spring Boot + Mybatis + DynamicDataSource配置动态双数据源,可以动态切换数据源实现数据库的读写分离. 添加依赖 加入Mybatis启动器,这里添加了D ...

  3. iOS-实现后台长时间运行

    前言 一般APP在按下Home键被挂起后,这时APP的 backgroundTimeRemaining 也就是后台运行时间大约只有3分钟,如果在退出APP后,过十几二十二分钟或者更长时间再回到APP, ...

  4. 使用request爬取拉钩网信息

    通过cookies信息爬取 分析header和cookies 通过subtext粘贴处理header和cookies信息 处理后,方便粘贴到代码中 爬取拉钩信息代码 import requests c ...

  5. hdu 5116--Everlasting L(计数DP)

    题目链接 Problem Description Matt loves letter L. A point set P is (a, b)-L if and only if there exists ...

  6. 14-02 Java Math类,Random类,System类,BigDecimal类

    Math类 Math的方法 package cn.itcast_01; /* * Math:用于数学运算的类. * 成员变量: * public static final double PI * pu ...

  7. [转]idea导入eclipse的web项目

    https://www.cnblogs.com/xiaoBlog2016/archive/2017/05/08/6825014.html 一.导入自己的web项目 步骤:File->New-&g ...

  8. UNPIVOT

      UNPIVOT UNPIVOT则相反,把数据从列旋转到行 SELECT  * INTO    product_vlues FROM    ( SELECT    NAME ,            ...

  9. 从零开始学 Web 之 移动Web(九)微金所案例

    大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...

  10. 一文揭秘定时任务调度框架quartz

    之前写过quartz或者引用过quartz的一些文章,有很多人给我发消息问quartz的相关问题, quartz 报错:java.lang.classNotFoundException quartz源 ...