Real Use Case

Use Case #22: Git Conflict Resolution

Resolving merge conflicts across multiple branches and feature flags.

W

William Welsh

Author

Dec 28, 2025
6 min read

Use Case #22: Git Conflict Resolution

"Who touched the config file?"

Everyone. Everyone touched the config file.

The Situation

Three developers working on five feature branches. Main config file modified in all five. Time to merge to main. 47 conflicts.

The Problem with Naive Resolution

Git shows you both versions. You pick one. But what if both changes are needed? What if they're subtly incompatible? What if one change assumes the other didn't happen?

Claude's Approach

Instead of mechanical conflict resolution, Claude analyzed intent:

Step 1: Read all branches - Understand what each branch was trying to accomplish. Not just the code, but the purpose.

Step 2: Identify true conflicts - Some conflicts are formatting only. Some are additive (both add things, just merge them). Some are genuinely incompatible.

Step 3: Resolve by intent - For incompatible changes: understand what each developer wanted to achieve, find a solution that achieves both goals.

Example Conflict

Branch A: Changed timeout from 5000 to 10000 (handling slow API). Branch B: Changed timeout from 5000 to 3000 (failing fast on errors).

Naive resolution: Pick one. Someone's problem isn't solved.

Claude's resolution: Add two timeouts - requestTimeout (3000) and slowApiTimeout (10000). Both intents preserved.

The Results

47 conflicts resolved in 25 minutes. Zero regressions. Both manual testing and automated tests passed.

The Lesson

Merge conflicts aren't about picking code. They're about understanding intent. Claude can read both sides and find synthesis.


This was a real merge nightmare on ContentEngine, December 2025.

W

William Welsh

Building AI-powered systems and sharing what I learn along the way. Founder at Tech Integration Labs.

View Profile
Share this article:

Related Articles

View all →