Basic Commands
If you thought of CRUD1, you nailed it! To manipulate the Changes of your history tree, you need:
| Operation | Command |
|---|---|
| Create | new |
| Read | show |
| Update | edit |
| Delete | abandon |
them.
Notice I wrote “Changes”, not “commits”. Jujutsu creates a different
commit when you amend, referencing it with the same Change ID so
treating it as the same thing. That thing is a Change:
“a commit as it evolves over time” — Glossary.
Beyond CRUD, you’ll also want to:
| Operation | Command |
|---|---|
| Move a Change | rebase |
| Move edits to another Change | squash |
| Copy files between Changes | restore |
| Display the history tree | log |
| List / undo / redo operations | op log / undo / redo |
That’s… basically it? Learn these and you master Jujutsu.
Macro Commands
Like in Git, some commands combine others:
| Operation | Possible command |
|---|---|
| Split a Change in 2 | split |
| Duplicate a Change | duplicate |
| Juggle Changes interactively | arrange |
| Bisect (the best Git command) | bisect |
| Magically distribute edits where they belong | absorb |
I swear, the first two sets alone will take you further than Git ever did.
Open a terminal, grab your keyboard, and prepare to get your hands dirty.
-
https://en.wikipedia.org/wiki/Create,_read,_update_and_delete ↩