Skip to main content

Why jj?

jj (jj for git experts) rethinks version control from first principles. Built for developers who want a safer, more intuitive workflow.

  • Working copy IS a commit (no staging area complexity)
  • Change IDs survive rebases (stable identifiers)
  • Conflicts are first-class (stored in commits, not blocking)
  • Automatic descendant rebasing (no more --update-refs)
  • Compatible with existing git repos (use both tools together)