33 lines
1.6 KiB
Markdown
33 lines
1.6 KiB
Markdown
---
|
|
name: resolving-merge-conflicts
|
|
description: Use when you need to resolve an in-progress git merge/rebase conflict.
|
|
risk: unknown
|
|
source: https://github.com/mattpocock/skills/tree/main/skills/engineering/resolving-merge-conflicts
|
|
source_repo: mattpocock/skills
|
|
source_type: community
|
|
date_added: 2026-07-01
|
|
license: MIT
|
|
license_source: https://github.com/mattpocock/skills/blob/main/LICENSE
|
|
---
|
|
|
|
|
|
## When to Use
|
|
|
|
Use when you need to resolve an in-progress git merge/rebase conflict.
|
|
|
|
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. Always resolve; never `--abort`.
|
|
|
|
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.** Stage everything and commit. If rebasing, continue the rebase process until all commits are rebased.
|
|
|
|
## Limitations
|
|
|
|
- Use this skill only when the task clearly matches its upstream source and local project context.
|
|
- Verify commands, generated code, dependencies, credentials, and external service behavior before applying changes.
|
|
- Do not treat examples as a substitute for environment-specific tests, security review, or user approval for destructive or costly actions.
|