Skip to main content

Git to jj Cheat Sheet

If you are coming from Git, adapting to Jujutsu (jj) is straightforward. Many concepts are similar, but jj removes a lot of boilerplate (like staging) and introduces powerful new workflows (like stable change IDs).

Repository Setup

Committing Changes

In jj, you do not need to stage files. Your working copy is automatically treated as an active change.

Branching (Bookmarks)

jj calls branches “bookmarks”. Unlike Git, establishing your working copy does not require “checking out” a branch; you simply move your working copy to a change.

History and Logging

jj tracks history as a tree of changes. The @ symbol represents your current working copy.

Remote Synchronization

JJ bridges with Git remotes natively.
Tip: jj tracks every operation. Made a mistake? Just run jj undo to safely revert any jj command.