Two bundled fixes across the same nine skills, since both touch the same files. Issue #113: skill prose used rtk git and bare git inconsistently for the same operations, with no stated rule for which applied where. Executable instructed commands (a dispatch-table "Run" cell, a fenced code-block procedure, an imperative step) now consistently use rtk git; illustrative or referential mentions -- naming a flag's behavior, quoting a doc heading, warning against an anti-pattern -- stay bare git. Documented in the new plugins/git/README.md, scoped to this plugin only: gitea-* skills talk to the server over MCP tools and carry no git/rtk mentions at all. Also the git-plugin slice of #127: metadata.version added to the eight skills that lacked it. git-commits already had one and is untouched. Fixes: #113 Fixes: #127 Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01EeH8SCbcrCAQrtymkNuhKP
31 lines
1.3 KiB
Markdown
31 lines
1.3 KiB
Markdown
---
|
|
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.
|