| name | pull |
| description | Rebase current branch on top of latest origin/main (and latest remote branch tip) while resolving conflicts cleanly. |
Pull
This is a rebase-based pull skill.
Goals
- Sync local branch with remote branch and
origin/main using rebase.
- Keep history linear and review-friendly.
- Resolve conflicts with minimal behavioral drift.
Workflow
- Ensure working tree is clean (or stash/commit first).
- Enable rerere for repeat conflict resolution:
git config rerere.enabled true
git config rerere.autoupdate true
- From the worktree root, run the helper:
./.algedonia/skills/pull/scripts/rebase_branch.sh
- The helper fetches
origin, checks refs/remotes/origin/$(git branch --show-current), and prints the selected path with the branch name:
- remote branch exists:
pull: branch <name> using remote-branch rebase via origin/<name>
- remote branch missing:
pull: branch <name> using origin/main fallback because refs/remotes/origin/<name> is missing
- The helper always finishes with:
- If conflicts occur:
- resolve files
git add <files>
git rebase --continue
- If needed, abort safely:
- Run project validation (repo-standard checks/tests).
- Summarize conflict decisions and follow-ups.
Conflict Guidance
- Decide intended final behavior before editing conflict hunks.
- Preserve existing invariants and contracts unless intentionally changed.
- Prefer minimal edits over broad rewrites during conflict resolution.
- Ensure markers are gone:
Ask User Only When
- Product intent is ambiguous and code/tests provide no signal.
- Resolution changes public contract or migration behavior with risk.
- Two plausible designs exist with no local tie-breaker.