Files
holocron/plugins/git/skills/git-branches/references/merging.md
Defame1297 af8b46cd57 chore(plugins): sync generated content mirrors
Regenerate plugins/*/skills/ from plugins/*/.apm/ after the previous
four commits, via scripts/sync-plugin-content.sh --all. The mirror is
generated output (ADR-0017) that check-plugin-content-sync's pre-push
hook diffs against .apm/; nothing here is hand-edited.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EeH8SCbcrCAQrtymkNuhKP
2026-09-07 20:43:51 +00:00

1.3 KiB

source_keys
source_keys
context7-git-htmldocs
atlassian-gitflow-tutorial

Merging one branch into another

Scope is fast-forward and merge-commit mechanics plus conflict resolution. Rebase and cherry-pick belong to git-commits; revert to git-history.

  • Fast-forward — rtk git merge <branch> advances the pointer with no merge commit when the target has not diverged.
  • True merge — rtk git merge --no-ff <branch> forces a merge commit even when a fast-forward is possible. Gitflow requires it on every supporting-branch merge.
  • Squash merge — rtk git merge --squash <branch> stages the combined diff without committing. Follow it with a rtk git commit.
  • Octopus merge — rtk git merge branch-a branch-b branch-c merges more than two branches at once, but fails outright on any conflict. Use sequential two-way merges when conflicts are likely.

Conflict resolution

When Git cannot auto-merge it writes conflict markers and stops mid-merge. Run rtk git status to list the conflicted files, edit each to resolve its markers, then rtk git add <file> and rtk git merge --continue.

  • rtk git merge --abort restores the pre-merge state.
  • rtk git mergetool opens the configured merge tool.
  • rtk git diff --diff-filter=U shows only the still-conflicted files.