Inspecting the state of a repository
Reset your progress
Reset your progress
To reset your progress to the start of this chapter, run the following command:
curl https://s2p2.github.io/jj-for-everyone/reset.sh | bash -s log
cd ~/jj-tutorial/repo
Now that you have an empty repository, let's inspect it with jj log, which shows a visual history of your work.
@ mkmqlnox alice@local 2025-07-22 20:15:56 f6feaadf │ (empty) (no description set) ◆ zzzzzzzz root() 00000000
Let's break down this output. The history graph is on the left:
- The
@symbol represents your working copy, which is the current state of your files. - The
◆symbol represents the root commit, an immutable empty state that all other commits descend from. - The line connects the two, showing that the working copy is a child of the root commit. History flows from bottom (oldest) to top (newest).
Each of these snapshots of your repository is called a commit. To the right of the graph is metadata about each commit. Let's look at the working copy commit:
mkmqlnox alice@local 2025-07-22 20:15:56 f6feaadf (empty) (no description set)
Here is what the different parts mean:
mkmqlnox: The Change ID, which identifies a conceptual change.alice@local: The author of the commit.2025-07-22...: The timestamp for when the commit was created.f6feaadf: The Commit ID (or hash), which identifies this specific snapshot.(empty): No files were changed in this commit compared to its parent.(no description set): This commit does not have a description yet.
Note that the Change IDs, Commit IDs, and timestamps in my examples will likely differ from what you see. This is normal.
In short, a repository is a set of commits. Each commit is a snapshot of your files with associated metadata like an author, timestamp, and description. Commits are linked in a parent-child relationship to form a history.
Getting help about using Jujutsu
We've now used jj git init and jj log. To explore Jujutsu's commands on your own, you can pass the --help flag.
jj --helplists all available commands.jj log --helpshows detailed documentation and options specifically for thelogcommand.
The help pages can be dense, but they are an excellent resource for learning and problem-solving.