
Resolve Merge Conflicts
- 3 installs
- Updated July 18, 2026
- arjitj2/arjit-skills
resolve-merge-conflicts is a skill that resolves PR merge conflicts end to end by merging the base branch locally, reconciling files, validating, and pushing.
About
A git workflow skill that resolves PR merge conflicts all the way through. It identifies the PR base branch, merges it into the current branch locally, carefully reconciles conflicted files, validates with typecheck and targeted tests, completes the merge commit, and pushes the branch. A developer uses it when a PR has conflicts that need resolving and pushing, not just inspecting.
- Resolves PR merge conflicts end to end: identify base, merge locally, fix files, validate, push
- Reconciles both sides carefully instead of blindly taking one, preserving feature intent and upstream fixes
- Validates with typecheck and targeted tests before completing the merge commit
Resolve Merge Conflicts by the numbers
- 3 all-time installs (skills.sh)
- Ranked #492 of 733 Git & Pull Requests skills by installs in the Skillselion catalog
- Data as of Jul 28, 2026 (Skillselion catalog sync)
resolve-merge-conflicts capabilities & compatibility
- Capabilities
- code review
- Works with
- github
- Use cases
- code review
What resolve-merge-conflicts says it does
Use this skill when a user wants merge conflicts on an active PR resolved all the way through, not just inspected.
Do not throw away either side without understanding what behavior it carried.
npx skills add https://github.com/arjitj2/arjit-skills --skill resolve-merge-conflictsAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 3 |
|---|---|
| Last updated | July 18, 2026 |
| Repository | arjitj2/arjit-skills ↗ |
What it does
Resolve a PR's merge conflicts end to end by merging the base branch locally, reconciling files, validating, and pushing the branch.
Who is it for?
Resolving and pushing conflicts on an active PR while preserving feature intent and upstream fixes.
Skip if: Line-level arbitration or blindly taking one side of a conflict for large files.
When should I use this skill?
When the user asks to look at merge conflicts on a PR, resolve them, and push the branch.
What you get
A conflict-free, validated merge commit pushed to the PR branch.
- A resolved merge commit pushed to the PR branch
- a report of conflicts and reconciliation decisions
By the numbers
- 9-step workflow
Files
Resolve Merge Conflicts
Use this skill when a user wants merge conflicts on an active PR resolved all the way through, not just inspected.
The goal is:
- identify the PR base branch
- merge the base into the current branch locally
- resolve the conflicted files without discarding intentional branch work
- validate the merged result
- commit the merge
- push the updated branch
Preconditions
- the current branch should already be the PR branch you intend to update
ghshould be authenticated for the repo if you need to inspect PR metadata- do not assume a conflict is already present locally; check first
Workflow
1. Inspect the current branch and PR context.
Start with:
git status --short --branch
git diff --name-only --diff-filter=U
gh pr view --json number,title,baseRefName,headRefName,urlNotes:
- if
git diff --name-only --diff-filter=Uis empty, there may be no active conflicted merge in the worktree yet - if needed, verify the branch matches
headRefNamefrom the PR
2. Fetch the latest base branch state.
Typical command:
git fetch origin3. Merge the PR base branch into the current branch locally.
Typical command:
git merge --no-edit origin/<base-branch>Examples:
git merge --no-edit origin/main
git merge --no-edit origin/developIf the merge reports conflicts, capture the conflicted files:
git diff --name-only --diff-filter=U4. Read each conflicted file before editing.
Look for conflict markers:
rg -n "^(<<<<<<<|=======|>>>>>>>)" <file>Guidance:
- keep the current branch's feature intent intact
- absorb compatible changes from the base branch
- prefer the newer shared API or wiring from base when it does not invalidate the feature branch's design
- remove conflict markers completely
- do not blindly take one side for large files; reconcile the behavior
5. Resolve the conflicts carefully.
When reconciling:
- preserve branch-specific feature work
- preserve legitimate upstream fixes from base
- adapt old single-file assumptions if the branch has moved to package-level or directory-level behavior
- update tests when upstream added coverage that still assumes old shapes
After edits, verify there are no remaining conflict markers:
rg -n "^(<<<<<<<|=======|>>>>>>>)" src6. Run the smallest useful validation for the merged surfaces.
Recommended baseline:
pnpm typecheckThen add focused tests for the files or systems touched by the conflict resolution. Examples:
pnpm exec vitest run src/main/issue-resolution.test.ts
pnpm exec vitest run src/main/skill-inventory.test.ts
pnpm exec vitest run src/renderer/src/views/InventoryViewChrome.test.tsxIf the conflict changes visible UI, also run a real browser check with Playwright.
7. Stage the resolved files and complete the merge commit.
Typical flow:
git add <resolved-files>
git status
git commit --no-editNotes:
- during a merge,
git commit --no-editwill usually finish the merge commit using the default merge message - only use a custom commit message if there is a clear reason
8. Push the updated PR branch.
Typical command:
git push origin <current-branch>Example:
git push origin codex/skills-are-directories-not-files9. Report back clearly.
Include:
- which files had conflicts
- the core reconciliation decisions
- the exact validation you ran
- whether the branch was pushed successfully
Decision Standards
- Do not throw away either side without understanding what behavior it carried.
- Prefer the feature branch's architectural direction when that is the purpose of the PR.
- Prefer the base branch's new shared APIs, tests, and wiring when they can be integrated cleanly.
- If upstream changed assumptions that conflict with the PR's design, reconcile the newer code to the PR's model instead of silently reverting the feature.
- Keep the result coherent; conflict resolution is integration work, not line-level arbitration.
Common Pitfalls
- assuming conflicts already exist locally when they do not
- resolving only the compile errors and missing test expectation drift
- leaving one file still marked
UUbecause it was edited but not staged - forgetting that merge commits are still in progress until
git commit - pushing before re-running targeted validation
Final Response To The User
Report back with:
- what conflicted
- what you chose in the reconciliation
- what checks passed
- confirmation that the branch was pushed
Related skills
FAQ
Should I blindly take one side of a conflict?
No. Reconcile both sides: preserve branch-specific feature work and legitimate upstream fixes, and never take one side for large files.
What validation runs before completing the merge?
The smallest useful validation such as typecheck plus focused tests for the files touched by the conflict.