Skip to content
This repository was archived by the owner on Jun 21, 2023. It is now read-only.
This repository was archived by the owner on Jun 21, 2023. It is now read-only.

Feature: Maintainer workflow #491

@shana

Description

@shana

Entry point

A contributor opens a PR

Reviewing a PR

In the PR list, click on "Review PR" to open the PR Review (details) pane

  • Adds PR remote to your local clone, if not there yet
  • If it's the first time this PR is being reviewed through VS and we've just added the remote
    • Create local branch tracking remote PR branch
      • If local branch matching naming convention already exists and is tracking the correct remote PR branch, assume that as the local PR branch
    • If local branch matching naming convention already exists but is not tracking the correct remote branch
      • Create local branch with a numbered suffix
  • Find local branch matching naming convention of PR with correct remote tracking branch of PR (should probably cache this info)
  • Switch to local branch

PR Review UI:

  • Tree view of changed files
    • Open individual file diff from tree view
  • Link to conversation view in PR Review UI
    • so you can jump to github to comment on the PR
  • If there are new commits since the last time this PR was opened:
    • Shows message saying "New commits available"
    • If there is a local branch for the PR, message says "would you like to update your local branch?"
      • If yes, fast-forwards the local branch.
        • If there are local changes then we warn and don't do anything

Merging and Closing a PR

The PR Review/Details pane has a Merge and a Close button.

  • Click on "Merge PR" or "Close PR"
    • Perform the action via the API
    • In case of merge:
      • Ask if user wants to clean up the PR branch
        • If yes, delete the remote and local branches
        • Fast forward target branch with remote commits
        • Switch to target branch

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    Status

    In Progress

    Status

    In Review

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions