使用Visual Studio Pull请求扩展进行代码审阅

泰瑟·吉尔法尔

VisualStudio的Pull请求是一个新的实验性扩展,它向VisualStudio添加了几个代码审阅工具。此扩展旨在让您轻松启动和查看拉入请求在集成开发环境(IDE)中,无需切换窗口或使用web。我们从客户那里了解到,拥有高质量的代码审查流程对提高生产力非常重要。为了实现这一点,此扩展使您能够在代码审阅过程中使用现有和新的VisualStudio代码导航、调试和共享功能。

截至目前,Visual Studio拉入请求仅支持Azure DevOps,您可以在Marketplace上下载。对于寻求GitHub拉请求支持的用户,请考虑使用Visual Studio的GitHub扩展.

本博客将重点介绍创建和审查拉取请求的基础知识,包括:

  • 创建新的拉入请求
  • 审查拉取请求
  • 使用标记、表情符号和赞提供富有表现力的评论
  • 比较超载和自我代码审查的代码差异

使用此扩展,您还可以:

  • 查看和签出Azure回购请求
  • 获取内联预览以查看有关代码中使用的方法的更多详细信息
  • 查看以前的更新,了解协作和讨论在拉取请求过程中是如何发展的

要了解有关此扩展的更多信息,请随时观看以下在线演示,其中介绍了如何使用Visual Studio 2019构建屡获殊荣的应用程序“看人工智能”。

 

创建新的Pull请求

之后安装pull请求扩展连接到Azure DevOps上的Git存储库,您可以通过单击将分支推送到远程时创建新的拉请求创建拉请求并填写新的拉取请求表。

推送分支后立即创建拉取请求

 

您还可以通过导航到,使用拉取请求页面创建拉取请求团队资源管理器>主页>拉取请求并选择新建Pull请求.

使用拉取请求页面创建拉取请求

 

当您有尚未推送到远程的本地提交时,拉请求扩展会提醒您在创建新的拉请求之前与远程共享您的更改。构建和代码分析结果部分将自动展开,让您了解任何失败的单元测试、错误和警告。(仅与C++、C#和VB兼容)

未推送的更改警告+生成和代码分析结果

 

审查拉取请求

拉取请求页面提供您创建的拉取请求和分配给您的拉取申请的摘要。您可以通过打开拉取请求、查看所做的更改、留下评论或批准拉取请求来进行简短的审查,如下所示。要进行详细检查并能够在本地运行和调试拉请求,可以使用结账选项。

拉取请求页面

 

拉动请求详细信息页面是一个重点屏幕,提供拉动请求描述和团队正在进行的讨论。它还提供了对pull请求引入的代码更改的访问,您可以在其中添加和查看团队以前添加的注释。

审查拉入请求引入的更改

 

您可以通过右键单击要注释的代码行并选择来添加注释添加注释。支持标记和表情符号,您可以使用预览选项在创建评论之前查看评论。您还可以引用错误、团队成员和其他您可能希望引入评论的上下文。也可以将注释标记为已解决,从而向其作者发送通知。

评论和社会编码

 

回顾自己的工作

VisualStudio的Pull Requests扩展附带了一个独特的代码差异工具,允许您在创建Pull请求之前随时查看自己的工作。这允许您在编写代码时查看更改的历史记录,这在您进行超负荷代码审查并希望关注引入的代码更改时非常有用。要打开代码差异,请单击比较按钮。

代码差异(比较)

 

通过Pull Requests扩展,我们现在在VisualStudio中集成了Pull请求和代码审查。

 

我们需要您的反馈!

我们继续重视您的反馈。一如既往,使用报告问题工具在Visual Studio中。你也可以前往Visual Studio开发人员社区要跟踪您的问题,建议一个功能,提出问题,并从其他人那里找到答案。我们使用您的反馈继续改进Visual Studio 2019,因此再次代表我们的整个团队感谢您。

 

安装Pull Requests扩展并给我们反馈!

8条评论

讨论结束。登录以编辑/删除现有评论。

  • 帕斯卡·伯杰 0

    你有计划在未来支持prem Azure DevOps服务器吗?还是只支持Azure DevOps?您是否计划在不同的托管平台上统一VisualStudio中的拉请求体验?这意味着,如果我在Azure Repos或GitHub repo中工作,工作流和用户体验将是相同的(这可能意味着不同托管提供商的适配器具有核心拉取请求体验)

    • 皮特·伯吉斯 0

      没想到会这样,但它与我们当地的TFS git repo一起工作。

      • 约翰·斯特金 0

        这太棒了!我需要亲自验证,但这是我们目前的工作流程,最好使用它而不是TFS的web界面…

    • 泰瑟·吉尔法尔Microsoft员工 0

      是的,我们计划在未来支持prem Azure DevOps服务器。我们还希望在不同的托管平台上统一Visual Studio中的拉请求体验(将Azure Repos和GitHub公共关系体验紧密结合在一起)

  • 本尼·斯乔尔·托德鲁普 0

    此扩展是否支持Visual Studio 2017?

    • 泰瑟·吉尔法尔Microsoft员工 0

      截至目前,我们还没有支持VS2017的即时计划。

  • 匿名老鼠 0

    哦,太好了,这正是专业程序员真正需要的;表情符号等。对于一些人来说,这可能是“有趣的”,但我宁愿你把精力放在修复错误积压工作上。

  • 肖恩·梅哈菲 0

    那么,何时将其添加到VS2019中,并成为“实验性扩展”。似乎随着VS2109中所有GIT的改进,这应该是初始版本中包含的功能之一。

反馈usabilla图标