table of contents
| JJ-FZF(1) | jj-fzf Manual Page | JJ-FZF(1) |
NAME¶
jj-fzf - Terminal interface for the jj version control system based on fzf
SYNOPSIS¶
jj-fzf [COMMAND] [ARGUMENTS...]
DESCRIPTION¶
jj-fzf is a text-based user interface for the jj version control system,
built on top of the fuzzy finder fzf. jj-fzf centers around the jj log
graph view, providing previews of jj diff or jj evolog for each revision.
Several key bindings are available for actions such as squashing, swapping,
rebasing, splitting, branching, committing, or abandoning revisions. A
separate view for the operations log, jj op log, allows fast previews of
diffs and commit histories of past operations and enabling undo of previous
actions. The available hotkeys are displayed on-screen for easy
discoverability. The commands and key bindings can also be displayed with
jj-fzf --help and are documented in the jj-fzf wiki.
JJ LOG VIEW¶
The jj log view in jj-fzf displays a list of revisions with commit
information on each line. Each line contains the following elements:
- @
- Marks the working copy
- ○
- Indicates a mutable commit, a commit that has not yet been pushed
- ◆
- Indicates an immutable commit, that has been pushed or tagged
- Change ID
- The (mostly unique) identifier to track this change across commits
- Username
- The abbreviated username of the author
- Date
- The day when the commit was authored
- Commit ID
- The unique hash for this commit and its meta data
- Refs
- Any tags or bookmarks associated with the revisions
- Message
- A brief description of the changes made in the revisions
Note, in jj, the set of immutable commits can be configured via
the revset-aliases."immutable_heads()" config setting.
PREVIEW WINDOW¶
The preview window on the right displays detailed information for the
currently selected revisions. The meaning of the preview items are as follows:
- First Line
- The jj log -T builtin_log_oneline output for the selected commit
- Change ID
- The jj revision identifier for this revisions
- Commit ID
- The unique identifier for the Git commit
- Refs
- Tags and bookmarks (similar to branch names) for this revisions
- Immutable
- A boolean indication for immutable revisions
- Parents
- A list of parent revisions (more than one for merge commits)
- Author
- The author of the revision, including name and email, timestamp
- Committer
- The committer, including name and email, timestamp
- Message
- Detailed message describing the changes made in the revision
- File List
- A list of files modified by this revision
- Diff
- A jj diff view of changes introduced by the revision
COMMAND EXECUTION¶
For all repository-modifying commands, jj-fzf prints the actual jj commands
executed to stderr. The output aids users in learning how to use jj directly
to achieve the desired effects. It can also be useful when debugging and helps
users determine which actions they might wish to undo. Most commands can also
be run via the command line, using: jj-fzf <command> <revision>
KEY BINDINGS¶
Most jj-fzf commands operate on the currently selected revision and
are made available via the following keyboard shortcuts:
jj-fzf --help-bindings
SEE ALSO¶
For screencasts, workflow suggestions or feature requests, visit the
jj-fzf project page at: https://github.com/tim-janik/jj-fzf
For revsets, see: https://martinvonz.github.io/jj/latest/revsets
| 2025-09-26T14:10:01Z | jj-fzf-0.33.0 |