How to resolve merge conflict in pull request in V

2019-01-22 20:02发布

问题:

I've created pull request I got into this:

"Approve" button does nothing and complete is disabled.

How do I resolve this confligt in pull request?

回答1:

Update

Microsoft just added browser based merges. This may get you out of a pickle for small conflicts.

For more complex situations:

You have two options to resolve the conflict, reverse-integrate the changes from the target branch (which creates additional merge commits), or rebase on the target branch (which leaves your history nice and clean).


Merge from target to current branch prior to completing the PR.

You need to clone the repo locally, perform a merge from the target branch to your branch and push those changes up to the repository. VSTS will detect the changes and update the pull request.

            -------o3              PR
           /
---------o1-o2                     target

Thus merge target (o2) to PR:

            -------o3-o4           PR
           /          /
---------o1----------o2            target

Then complete the PR

            -------o3-o4           PR
           /          / \
---------o1----------o2--o5        target

Rebase the PR branch to include the latest changes on target

Alternatively, you can clone the repo locally, rebase the PR branch on the latest version of the target branch, solve all issues from the rebase and force-push the changes back to the PR branch. VSTS will detect the changes and update the pull request.

            -------o3              PR
           /
---------o1-o2                     target

Thus rebase o3 onto o2:

              -------o3            PR
             /
---------o1-o2                     target

Then complete the PR (with Fast-forward merge in the case below):

---------o1-o2-o3                  target


回答2:

  1. Open your project with Visual Studio.
  2. Open View > Team Explorer
  3. Change to Branches tab.
  4. Double click to the branch you intend to merge (e.g. dev).
  5. Right Click > Merge From > Select
    Merge from branch: master,
    Into current branch: dev
  6. Click Merge button
  7. Choose the conflict file(s)
  8. Then resolve the conflicts. You can click the left or right checkbox for the section you want to include.
  9. Then commit the merge
  10. Done.


回答3:

You could do the above technique by @jessiehouwing or use the new plug-in. MicrosoftDevLabs released the link to the plugin to resolve conflicts. The link to plugin is given below https://marketplace.visualstudio.com/items?itemName=ms-devlabs.conflicts-tab