MRGR – The Ultimate Merge Conflict Resolver

Inspiration

Merge conflicts are a nightmare for every developer. We've all been there—pulling changes, only to be greeted by a wall of conflicts. VSCode’s default merge tool doesn't make it any easier, forcing us to switch between panels without a clear view of the final output.
We knew there had to be a better way. MRGR was born from this frustration, designed to make resolving merge conflicts simple, fast, and intuitive.

What it does

MRGR simplifies the merge conflict resolution process inside VSCode by providing:

  • A clear multi-panel UI displaying the original, incoming, and merged versions of a file.
  • Intuitive controls like clickable arrows to copy code between versions effortlessly.
  • AI-powered conflict resolution, where AI suggests a smart merge based on user-defined preferences.
  • One-click commits, allowing users to finalize resolutions without leaving the editor.

How we built it

  • Built as a VSCode extension using the VSCode API for seamless integration.
  • Merge conflict handling logic is implemented in mergeHandler.ts, parsing and managing code differences.
  • AI integration via OpenAI’s API helps generate smart, context-aware merges.
  • Command registration in extension.ts enables users to trigger conflict resolution directly from the VSCode command palette.

Challenges we ran into

  • VSCode API quirks: Manipulating text editor content dynamically while ensuring a smooth user experience required creative workarounds.
  • Bridging between panels: Ensuring smooth transitions between the original, incoming, and merged views was a technical challenge. We had to find ways to keep changes in sync, avoid desynchronization issues, and make the UI intuitive.
  • AI fine-tuning: Crafting effective prompts to generate meaningful and structured merged code was a learning curve.
  • Complex conflict cases: Some merges weren’t straightforward, requiring partial selections from both branches while maintaining logical consistency.
  • Irony in action: We faced real merge conflicts while building MRGR, making the need for our tool even more apparent.

Accomplishments that we're proud of

  • We actually use it: It’s not just a project—we now rely on MRGR to handle our own merge conflicts.
  • It just works: Seeing it resolve complex conflicts in seconds instead of minutes or hours is incredibly satisfying.
  • A real solution to a real problem: We solved an issue that every developer faces, making the coding experience smoother for everyone.

What we learned

  • Communication is everything: Delegating tasks, staying in sync, and ensuring everyone understood the project vision was key.
  • Thinking like a user: Building MRGR forced us to design from a developer’s perspective—prioritizing clarity, efficiency, and ease of use.
  • AI is powerful, but not perfect: AI-assisted merging is amazing, but human intervention is still necessary for certain edge cases.

What's next for MRGR

  • Publishing to the VSCode Extension Marketplace to make MRGR accessible to all developers.
  • Seamless GitHub integration: Users should be able to fetch branches, resolve conflicts, and push changes directly from MRGR.
  • More AI-powered enhancements: Smarter conflict suggestions, customizable merging preferences, and deeper code understanding.

MRGR is just getting started, and we can’t wait to see how developers use it to eliminate merge conflict headaches.

Built With

+ 19 more
Share this project:

Updates