# Resolving Merge Conflicts

> Use when you need to resolve an in-progress git merge/rebase conflict.

- Skill: `stanfish06/resolving-merge-conflicts` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add stanfish06/resolving-merge-conflicts`
- Raw SKILL.md: https://api.skillmd.com/api/skills/stanfish06/resolving-merge-conflicts/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: stanfish06 (https://skillmd.com/u/stanfish06)
- Updated: 2026-09-22
- Page: https://skillmd.com/skills/stanfish06/resolving-merge-conflicts

---


1. **See the current state** of the merge/rebase. Check git history, and the conflicting files.

2. **Find the primary sources** for each conflict. Understand deeply why each change was made, and what the original intent was. Read the commit messages, check the PRs, check original issues/tickets.

3. **Resolve each hunk.** Preserve both intents where possible. Where incompatible, pick the one matching the merge's stated goal and note the trade-off. Do **not** invent new behaviour. Resolve rather than `--abort`; if a hunk's intent cannot be established from the sources in step 2, `--abort` and ask, never commit it unresolved.

4. Discover the project's **automated checks** and run them, typically typecheck, then tests, then format. Fix anything the merge broke.

5. **Finish the merge/rebase.** Before staging, run `git diff --check` (warns on leftover conflict markers) and confirm `git ls-files -u` is empty. Stage only the files you resolved, then commit. Git will not stop you: staging a file that still contains `<<<<<<<` clears its unmerged entry and the commit succeeds with the markers in history. If rebasing, continue the rebase process until all commits are rebased.

