resolving-merge-conflicts SKILL.md skillA
resolving-merge-conflicts from aethrox/doctrine is an agent skill: a SKILL.md folder an AI agent loads when a task calls for it.
mdr add aethrox/doctrine/resolving-merge-conflicts@git:20260809.5c2aad2Pins git:20260809.5c2aad2 in mdr.lock. Pin the fingerprint instead.
- Audit grade
- A, 17 of 17 checks passed
- Kind
- SKILL.md skill
- Repository
- aethrox/doctrine
- Path
skills/resolving-merge-conflicts/SKILL.md- Versions recorded
- 2
- Latest version
- git:20260809.5c2aad2, committed Aug 9, 2026
- First version recorded
- Aug 9, 2026
- Size
- 5,810 bytes
- Repository stars
- 19
- License
- MIT
Discipline for resolving an in-progress git merge or rebase conflict, a conflict marker names two divergent intents from a shared ancestor, resolved by tracing each side back to what it was trying to accomplish, never by blindly picking one side's raw text. Use when a merge or rebase has stopped with conflict markers, when deciding whether to resolve with --ours/--theirs, or when choosing between merge and rebase for integrating a branch.
Collected from public GitHub. Every version is saved exactly as it was and never changes. Install it at an exact version with the mdr tool, and every file is checked before it reaches your agent. The main file is checked against the SHA-256 fingerprint recorded here, and the others against the fingerprints GitHub keeps for its source commit. The automatic checks below grade the latest version, and the same checks always give the same file the same grade.
What the file says
# Resolving Merge Conflicts A conflict marker is not a text diff to eyeball into agreement; it's two commits that each changed the same region of a file since their shared ancestor, and git can't tell which change should win because it doesn't know what either side was trying to accomplish. Resolving it means tracing each side back to its actual intent and reconciling those intents, not picking whichever half of the marker looks less broken. ## Phase 1: Understand what's actually being compared Git's three-way merge compares three points: the **merge base** (the last common ancestor), **HEAD** (the current branch's state), and the **incoming branch's** state. A conflict fires specifically where both sides changed the same region relative to that shared base; git applies both sets of changes automatically everywhere they don't overlap, and only asks a human where they do. Before resolving anything, identify all three for the conflicting hunk: what did the base look like, what did HEAD do to it, what did the incoming side do to it. A resolution written by comparing only the two conflicting sides, without the base, is missing the information that explains *why* they diverged. …
Read the whole file at its exact version.
How to install
mdr add aethrox/doctrine/resolving-merge-conflicts@sha256:7ec57db914708716The line at the top of this page pins the label git:20260809.5c2aad2, which is what most people want. This one pins the sha256 fingerprint of the contents instead, so it survives a label being moved. Either way the exact version is written to mdr.lock, and mdr install downloads and checks those contents again, so it installs them exactly or stops with an error.
[](https://markdownregistry.com/a/art_ewus5nzdfsnp5tvq)
5 badge image fetches in 30 days. What the badge shows.
Versions
The registry has recorded 2 versions of this file, all committed on Aug 9, 2026.
| version | committed | commit | size | audit | |
|---|---|---|---|---|---|
| git:20260809.5c2aad2 latest | 2026-08-09 | 5c2aad2 | 5,810 B | A | view · diff |
| git:20260809.21f29b0 | 2026-08-09 | 21f29b0 | 5,870 B | A | view |
Audit of the latest version
- pass: Frontmatter block present
- pass: Frontmatter declares a name
- pass: Frontmatter declares a description
- pass: Size between 200 bytes and 200 KB (5810 bytes)
- pass: No zero-width or bidi control characters
- pass: No instruction hidden inside an HTML comment
- pass: No link to an exfiltration or paste host
- pass: No credential-shaped string
- pass: No instruction to send local credentials anywhere
- pass: No text hidden with inline styles
- pass: No prompt-injection phrasing
- pass: No curl or wget piped into a shell
- pass: No recursive delete of root, home or parent
- pass: No instruction to read or print local credentials
- pass: No base64 blob over 200 characters
- pass: No link to a raw IP address
- pass: No script tag
Source
aethrox/doctrine · 19 stars · license MIT · pushed 2026-09-11 · branch main
API
GET https://markdownregistry.com/api/v1/artifacts/art_ewus5nzdfsnp5tvq GET https://markdownregistry.com/api/v1/resolve?ref=aethrox/doctrine/resolving-merge-conflicts GET https://markdownregistry.com/api/v1/blob/7ec57db9147087168ea07c41fab79fccaf6fa506657196d9e05e687d62a0dba3
Your AI assistant does the legwork. You hear about the deals worth your word. Hand yours the standing instructions at modelranch.com and it joins the network that reads files like this one.
Guides: the SKILL.md format and its required fields · what to check before you install a skill · how to pin a skill to an exact version · where to find agent skills · keeping a team on the same skills · which agent file does what.
More from aethrox/doctrine
Every file in aethrox/doctrine