Merge Conflict Resolver
Resolve merge conflicts in Azure DevOps pull requests, right in the browser: no clone, no local merge, no push.
Merge Conflict Resolver adds a 3-way merge editor to the pull request, for everyone who can open the pull request and
doesn't want to clone, merge and push for a small conflict.
- Resolve each conflict in the browser, one click or line by line.
- Your work and your file format survive: no lost edits, no mangled characters.
- With Pro, reviewers and builds see the resolution on the source branch.
- Free plan for 10 pull requests a month. Pro from $12 per organization per month, with a 14-day trial that starts automatically.
Looking for a replacement for Microsoft's DevLabs "Pull Request Merge Conflict Extension"? It is no longer maintained.
This is an independent, maintained alternative, not affiliated with Microsoft; see How it compares.

Pick lines with checkboxes, let your organization's rules resolve the rest, then commit to the source branch.
Resolve conflicts like in your IDE
- 3-way editor: target, source and result side by side. Non-conflicting changes are merged automatically.
- One-click actions above every conflict: Accept target, Accept source, Accept both.
- Pick individual lines with checkboxes, like in Visual Studio. The result follows immediately. (New)
- Changed words are highlighted inside changed lines, and an optional base pane shows the common ancestor. (New)
- Keyboard shortcuts (Alt+1/2/3 accepts target, source or both for the conflict under the cursor;
? shows the full list). (New)

Tick lines in the target and source panes; the result follows, and Accept selection finishes the conflict.
Never lose work or mangle a file
- Drafts: every edit is saved locally and restored after a reload or browser crash.
- No accidental conflict markers: a file can't be marked as resolved while
<<<<<<< markers remain.
- Byte for byte: encoding (UTF-8, UTF-8 with BOM, UTF-16, Windows-1252/ANSI) and line endings (CRLF/LF, even mixed
within one file) are detected and written back unchanged, so accented and non-Latin characters are never mangled.

Encoding and line endings are detected and kept.
Make the resolution visible (Pro)
- Commit to the source branch: reviewers, builds, branch policies and local clones see the resolved files, just like
a merge you did locally. No hidden changes in the merge preview.
- Summary comment on the pull request: every conflicted file and how it was resolved, with a link to the merge commit
(can be turned off in the settings).
- View merge result: a link to the merge commit right from the success banner. (New)

One click puts the resolved merge on the source branch.
Rules for your organization
- Resolution rules per file pattern (Pro), for example
package-lock.json → target, CHANGELOG.md → both.
Apply them in one click, or automatically when the tab opens. (New)
- Restrict the tab to chosen target branches (all plans), so it only shows up where you want it. (New)

Resolution rules and the branches where the tab is available, set once for the organization.
Every conflict type, fast on big pull requests
- Edit/edit, add/add, edit/delete, renames and path conflicts, binary files, Git LFS files and submodules.
- Hundreds of conflicts, multi-megabyte lockfiles and very long lines stay responsive.
- Follows your Azure DevOps light or dark theme.
Free and Pro
|
Free |
Pro |
| Pull requests per organization per month |
10 |
Unlimited |
| 3-way editor, line picking, base pane, all conflict types |
✔ |
✔ |
| Drafts, encoding and line endings kept, View merge result |
✔ |
✔ |
| Restrict the tab to target branches |
✔ |
✔ |
| Bulk-resolve all remaining files |
– |
✔ |
| Auto-resolve whitespace-only conflicts |
– |
✔ |
| Commit to the source branch |
– |
✔ |
| Summary comment on the pull request |
– |
✔ |
| Resolution rules per file pattern |
– |
✔ |
Pro starts at $12 per organization per month or $120 per year (Pro Team, up to 25 users); Pro Business and Pro Enterprise tiers for larger organizations. See the Pricing tab. When the 14-day
trial ends or a subscription stops, the organization falls back to the free plan; nothing breaks.
How it compares
|
Merge Conflict Resolver |
DevLabs conflicts tab |
Resolve locally |
| Stays in the browser, no clone needed |
✔ |
✔ |
Clone, merge, push |
| Choose per conflict: target, source or both |
✔ |
Whole file only |
✔ (your IDE) |
| Work survives a reload or crash |
✔ |
– |
✔ |
| Encodings and line endings kept byte for byte |
✔ |
Reported to mangle non-ASCII |
✔ |
| Reviewers and builds see the resolution |
✔ (Pro) |
Only in the merge preview |
✔ |
| Actively maintained, with support |
✔ |
No longer maintained |
n/a |
Why not just resolve locally? For a big refactoring you probably should. For the everyday conflict in a changelog,
a config file or a lockfile, anyone with access to the pull request resolves it here in a minute, without a clone or a
merge tool, and with Pro the result lands on the source branch exactly like a local merge.
How it works
- Open a pull request with conflicts and go to the Resolve conflicts tab.
- Resolve every file. As soon as the last one is resolved, Azure DevOps creates the merge with your resolutions.
- With Pro, commit that merge to the source branch with one click; then complete the pull request as usual.
After buying Pro, an organization admin enters the license key under
Organization settings → Extensions → Merge Conflict Resolver.
Permissions and security
- Your code stays in Azure DevOps. The extension runs in your browser and only calls your organization's Azure
DevOps REST API. There is no analytics or telemetry.
- The only external call is the license check with Lemon Squeezy (about once a week): the license key and your
organization name and ID, never code.
- Why Code (read and write): to read the conflicting files, to save your resolutions to the pull request, and,
with Pro, to commit the resolution to the source branch and post the summary comment.
- It acts as the signed-in user and can't do more than that user is allowed to. It only changes a branch when you
select Commit to <source branch>: always a fast-forward to the merge commit, never a history rewrite, and
refused if someone pushed in the meantime.
What's new in 1.2
- Azure DevOps Server 2022 and newer (on-premises) is supported, with the same extension and the same license tiers
per project collection.
What's new in 1.1
- Pick individual lines with checkboxes, highlighted changed words and an optional base pane.
- Resolution rules per file pattern (Pro) and restricting the tab to chosen target branches.
- Keyboard shortcuts, a View merge result link and clearer errors with Copy details for support.
- Pro organizations now see their monthly pull request count too.
Full release notes: jr-devtools.com.
Supported
- Azure DevOps Services (cloud) and Azure DevOps Server 2022 and newer (on-premises), including Express.
On Server a license covers one project collection; see
Azure DevOps Server for installing with or without internet access.
- On Azure DevOps Server, submodule conflicts are resolved locally: the server resets a resolution made in the
browser, so the tab explains the git commands instead.
- Conflicts of cherry-pick and rebase operations can't be resolved: Azure DevOps doesn't offer that for any extension.
Guides
Support
Questions: support@jr-devtools.com or the Q&A tab, answered within 2 business days.
Bug reports and feature requests: GitHub issues.
FAQ, changelog and support policy: jr-devtools.com.
About
Built and supported by Jeroen Reinink, a developer in the Netherlands (EU) who uses Azure DevOps every day, also the
maker of Bulk Editor, a spreadsheet grid
for editing many work items at once. Questions are answered by the developer within 2 business days.
Your code, pull requests and settings live in Azure DevOps, so there is nothing to migrate. If development ever stops,
the extension will be made open source and handed over to another maintainer, so your team can keep using it.
| |