Review pull requests

Azure Repos | Azure DevOps Server 2020 | Azure DevOps Server 2019 | TFS 2018-TFS 2015

Visual Studio 2019 | Visual Studio 2017 | Visual Studio 2015

After you create a pull request (PR), send the PR for review by stakeholders. You can add required or optional reviewers to your PR. Required reviewers must approve the PR before it can merge.

Teams can also set branch policies that require a minimum number of reviewers, or certain required or optional reviewers, before certain PRs in protected branches can merge. You can change optional included reviewers to be required or remove them, but you can't remove reviewers that are required by branch policy. To learn more about setting branch policies and reviewers, see Automatically include code reviewers.

High-quality reviews start with high-quality feedback. For guidelines on getting and giving good review feedback, see Pull request feedback.

Prerequisites

  • Repos must be enabled on your project. If the Repos hub and associated pages don't display, see Turn an Azure DevOps service on or off to reenable Repos.

  • To review PRs, you must be a member of the Azure DevOps project the PR is in, with Basic access or higher. If you aren't a project member, get added.

    Note

    For public projects, users granted Stakeholder access have full access to Azure Repos.

  • Repos must be enabled on your project. If the Repos hub and associated pages don't display, see Turn an Azure DevOps service on or off to reenable Repos.

  • To review PRs, you must be a member of the Azure DevOps project with Basic access or higher. If you aren't a project member, get added.

  • To view or review PRs, you must be a member of the Azure DevOps project with Basic access or higher. If you aren't a project member, get added.

Browse changes

To give a quick picture of PR status, the PR Overview tab summarizes checks, requirements, and branch policies that the PR is passing or failing. In some cases, the summary shows a snippet of the failure message from a status check's log. The overview lists only failed policies, but you can see all the passed and failed policy checks by selecting View <n> checks.

On the PR Overview tab, you can review the PR description and comments to understand proposed changes and see issues other reviewers raised.

Screenshot that shows the PR overview tab.

Review files

Select the PR Files tab to review the actual changes made in the source branch, Inline or Side-by-side with the target branch.

You can see how Markdown files will look published by selecting the View button on a file, and then selecting Preview.

Screenshot that shows a side-by-side diff view of file changes in a P R.

Note

When viewing the difference for a single selected file, there's a file size limit of 5 MB. To view and diff files larger than 5 MB, you can download the file and view it using a local diff tool. When viewing the difference for a collection of files, the size limit for each file is 0.5 MB, for performance reasons.

Select the PR Files tab to view the actual changes made to the source branch next to the target branch of the pull request.

PR files

Note

When viewing the difference for a single selected file, there's a file size limit of 5 MB. To view and diff files larger than 5 MB, you can download the file and view it using a local diff tool. When viewing the difference for a collection of files, the size limit for each file is 0.5 MB, for performance reasons.

Review updates

You can review previous versions of the code from the All Changes drop-down list. Every update to the branch adds a new version to the list and on the Updates tab of the PR. As you select different updates, the diff view updates to show the differences between the files in each version of the PR.

You can catch up with PR updates after being away from the PR by stepping through changes made since your last review. You can view multiple updates at once by pressing Shift while selecting the updates you want to see.

Screenshot that shows the All changes drop-down.

Review previous versions of the code from the All updates drop-down list.

PR updates

Every update to the branch adds a new version to the list and on the Updates tab of the PR. As you select different updates, the diff view updates to show the differences between the files in each version of the PR.

You can catch up with PR updates after being away from the PR by stepping through changes made since your last review.

Browse a list of changes from the author on the Updates tab.

Browse a list of changes from the author.

View and select changes made in commits to the branch on the Commits tab.

PR commits

Browse a list of changes from the author on the Updates tab.

Browse a list of changes from the author.

View and select changes made in commits to the branch on the Commits tab.

PR commits

Make comments

Add comments to a PR to make suggestions, reply to previous comments, and point out problems with the proposed changes.

  • Comment inline in the Files tab of a PR by hovering over the line you want to comment on and selecting the comment button .

    Screenshot of comments in Azure Repos P Rs.

  • Comment inline in the Files tab of a PR by hovering over the line you want to comment on and selecting the comment button Comment button in a PR.

    Screenshot of comments in Azure Repos P Rs.

  • Give feedback not tied to a specific code line by commenting on the Overview tab.

  • Address the author or other reviewers directly in your comments by using @username, and reference work items by using #workitemID. You can also reference other PRs by using !pullrequestID.

Suggest changes

To suggest changes directly, select the lightbulb icon in the comment interface, make your suggested changes in the code, and then select Comment.

Screenshot showing how to make a suggested change.

Edit, delete, or like a comment

To edit or delete a comment you made, hover over the comment and select the pencil icon to edit the comment, or the garbage can icon to delete the comment.

To like your own or someone else's comment, hover over the comment and select the thumbs-up icon. Comments with likes show a filled in icon and the number of likes in the comment list. Hover over the icon to see the list of people who liked the comment.

Screenshot showing the edit, delete, and like buttons in a P R comment.

Like a comment

To like a comment that you or someone else made, select the heart icon. Hover over the icon in comments to see the list of people who liked the comment.

Filter comments

You can select which comments and updates show on the Overview page. Hiding some comments and updates gets them out of the way when reviewing code for the first time. You can also show only what's new since the last time you visited the PR.

To filter comments and updates, select the Show everything (n) button above the comment list, and select one of the filtering options. The view changes to show only the selected comments and updates. The button label changes to show the filtering criteria and the number of items shown.

Screenshot showing the options to filter the comment list in a P R.

Vote on changes

Use the button at upper right in the PR to vote on the PR changes. The default option is Approve, but you can select other options from the dropdown list:

Screenshot that shows P R voting options.

  • Approve: Approve the proposed changes in the PR.
  • Approve with suggestions: Approve the PR, but provide optional suggestions for improvement.
  • Wait for author: Don't approve the changes, and ask the author to review your comments. The author should let you know to review the code again after they address your concerns.
  • Reject: The changes aren't acceptable. Leave a comment in the PR to explain why.
  • Reset feedback: Remove your vote.

Reset feedback

To remove your vote from a PR, select Reset feedback from the Approve dropdown list at upper right in the PR.

Screenshot that shows selecting Reset feedback from the Approve dropdown list.

Address comments

To make quick updates to your PR in response to comments, select Edit on the Files page in your branch on the web.

Screenshot that shows the Edit button to update code directly in Azure Repos.

After updating your files, commit changes and push the updates to your PR.

You can also immediately apply reviewers' suggested changes by selecting Apply change in the comment on the PR Overview page. Once you've applied all the changes you want, select Commit all changes.

Screenshot that shows the Apply change button in a PR comment.

You can make quick updates to your branch directly from the Files tab in Code on the web.

Screenshot that shows the Edit button to update code directly in Azure Repos.

Reply and resolve comments

Reply to comments and update comment status to let reviewers know how you're addressing their comments and suggestions.

  • To resolve a comment without replying, select Resolve under the comment.
  • To reply to the comment, type your response in the Write a reply field, and select Reply.
  • To reply to and resolve the comment, type your response in the Write a reply field, and select Reply & resolve.
  • Reply to specific reviewers by using @username in the reply, and reference work items by using #workitemID. You can also reference other PRs by using !pullrequestID.

New comments start in Active status. Select Resolve or Reply & resolve to update comment status to Resolved.

Update comments in Azure Repos P Rs.

More options are available in the comment resolution dropdown list:

Screenshot of more options in the comment resolution dropdown list.

  • Active: The comment is still under review.
  • Pending: The issue in this comment will be addressed, but isn't fixed yet.
  • Resolved: The issue brought up in this comment is fixed.
  • Won't fix: The suggestion in the comment is noted, but this PR won't address it.
  • Closed: Discussion for this comment is closed.

To keep track of files that have already been reviewed, select More options next to a file in your PR, and then select Mark as reviewed.

Next steps