Rebase the current changeset stack onto the latest trunk.
Rebases the current changeset stack onto the latest trunk branch.
npx claudepluginhub jeffh/claude-pluginsRebase the current changeset stack onto the latest trunk.
Fetch latest changes:
jj git fetch
Identify the stack root:
jj log -r 'roots(::@ ~ ::trunk())'
Rebase the stack:
jj rebase -s 'roots(::@ ~ ::trunk())' -d trunk()
@) onto trunkShow result:
jj log
If rebase reports conflicts:
jj status --no-pager to see conflicted filesEmpty working copy (@ has no changes):
Already on trunk:
roots(::@ ~ ::trunk()) returns nothing, inform the user they're already up to datetrunk() not configured:
trunk() fails, fall back to checking for main@origin or master@origin:
jj log -r 'main@origin | master@origin' --no-graph -T 'self.bookmarks()'
main@origin)trunk() is jj's built-in revset for the primary branch (respects repo config)-s rebases the source and all descendants::@ means "all ancestors of @ including @"~ ::trunk() excludes trunk and its ancestors