Pull Request Improvements in Visual Studio Team Services

Code Review with pull request is a central part of every git developer’s inner loop.  Over the past few months, we’ve added a number of improvements to the pull request web experience for Visual Studio Team Services (VSTS), all focused on improving productivity while using pull requests.  Let’s take a look at what’s new.

Personalized Pull Request Hub

The pull request hub is the starting point for both creating PRs and finding PRs that need reviewed.  To make it easier for developers to find the PRs that need their input, we’ve reorganized the hub to put the most important PRs in focus.  The first two sections are self-explanatory: requested by me, and assigned to me.  The third section shows any PR that’s been assigned to the team that’s selected in the project/team picker. 

For each pull request, a rollup of the status is shown to highlight the PRs that require action. 

Reviewers are shown with an overlay of their votes, to help identify at a glance which teams and users have signed off.

The “All” view provides a way to find pull requests that don’t appear in your default view.  Currently, there are some canned filter options, and coming soon we’ll be providing richer options to filter PRs by author and reviewer.

Streamlined Discussions

The discussions view provides a summary of the activity on a pull request, but in PRs with a lot of comments and multiple reviewers, the summary can be quite busy.  To help reviewers focus on the most important details, there are now options to show only comments, or further scope down the view to show only comments left on the discussion (and not in the files).

Related Work Items

VSTS has always been about integration between code, builds, and work items, and now we’ve brought that integration to pull requests.  The Related Work Items section makes it simple to link PRs to bugs and stories, providing context to reviewers that might need a little more detail. 

Just enter an ID or keyword to find the work item you want to link.

 

A Better Merge Experience

After all of the votes are in and your build is passing, it’s time to complete your PR.  The merge dialog provides an opportunity to customize the merge commit message, taking the defaults from the PR title and description.  To keep your repos clean, check the option to delete the source branch when the merge is complete.  Coming soon is an option to squash when merging, keeping the history graph simple and free of merge commits.

After the merge is complete, the merge commit will be automatically linked to the related work items, keeping the traceability in place from the code to the work items. 

These features are just the beginning of some larger investments we have underway for pull requests, so stay tuned for more updates in the coming months.  In the meantime, go to your account to try out the new features.