jj rebase adds --simplify-parents
Introduced 2026-03-04 · score 0.92
HOW TO USE IT
When rebasing commits and you want to remove parent edges that are ancestors of other parents, run `jj rebase --simplify-parents --onto <destination>`; with no source selector, jj rebases the default branch `@`.
jj rebase --simplify-parents --onto <destination>WHY THIS HELPS
Rebase commits while applying parent simplification to the rebased commits.
BEFORE THIS CHANGE
Rebase first, then run `jj simplify-parents` on the freshly rebased commits.
REQUIREMENTS AND LIMITATIONS
- Version: v0.39.0
- --simplify-parents: Simplify parents of rebased commits by removing parents that are ancestors of other parents.
- --onto <REVSETS> (required): Revision(s) to rebase onto; may be repeated to create a merge commit. A rebase destination is required.
- --branch, --source, or --revisions: Selects what to rebase. If none is supplied, the default is `--branch @`.
- Prerequisite: Use jj v0.39.0 or later for this flag.
FIRST-PARTY EVIDENCE
- https://github.com/jj-vcs/jj/releases/tag/v0.39.0
- https://github.com/jj-vcs/jj/blob/v0.39.0/cli/src/commands/rebase.rs
Check the installed version and the source before using it. Entry JSON