Resolving Merge Conflicts (Matt Pocock skill)
Five steps for an already-started merge or rebase conflict. See the actual state (git history, conflicting files). Find the primary sources for each side: commit messages, PRs, originating issues, to understand the intent behind each change. Resolve hunk by hunk, preserving both intents where possible, and where incompatible pick the one matching the merge's stated goal while noting the trade-off. Discover then run the project's automated checks (typecheck, tests, format). Finish the merge or rebase. It never runs --abort.
Strengths
- Intent-based resolution, tracing commits, PRs and issues on each side before touching a line
- Explicitly forbids inventing new behaviour at resolution time
- Runs the project checks afterwards: a resolved conflict that breaks the typecheck does not pass
- Standalone, with no dependency on the other skills in the set or a configured tracker
Limitations
- Never --abort: if the resolution goes wrong you undo it yourself, the skill provides no way back
- Tracing to primary sources assumes readable commit messages and PRs, rarely true on an old repo
- Five lines of instructions: no guardrail if the conflict lands on code nobody understands any more
Best for
- A long rebase on a branch left open too long, with dozens of conflicting hunks
- Devs resolving a conflict in code they did not write who want to understand both intents
- Teams where conflict resolution regularly produces silent regressions