jjui
is a terminal user interface for working with Jujutsu version control system. I have built it according to my own needs and will keep adding new features as I need them. I am open to feature requests and contributions.
Currently, you can:
You can change revset while enjoying auto-complete and signature help while typing.
You can rebase a revision or a branch onto another revision in the revision tree.
See Rebase for detailed information.
You can squash revisions into one revision, by pressing S
. The following revision will be automatically selected. However, you can change the selection by using j
and k
.
Pressing l
(as in going right into details of a revision) will open the details view of the revision you selected.
In this mode, you can:
- Split selected files using
s
- Restore selected files using
r
- View diffs of the highlighted by pressing
d
For detailed information, see Details wiki page.
You can abandon a revision.
You can move bookmarks to the revision you selected.
You can split revisions.
You can open the preview window by pressing p
. Preview window displays output of the jj show
command of the selected revision. If the currenlty selected item is a file, then jj diff
output is displayed.
While the preview window is showing, you can press; ctrl+n
to scroll one line down, ctrl+p
to scroll one line up, ctrl+n
to scroll half page down, ctrl+u
to scroll half page up.
Additionally, you can press tab
to focus in and out of the preview window. Once in the focus mode, you can use normal (e.g. j
, k
, d
, u
) navigation keys as they are not bound to the revision tree view.
For detailed information, see Preview wiki page.
You can see diffs of revisions.
Additionally,
- Edit description of a revision by pressing
D
- Create a new revision by pressing
n
- Edit a revision by pressing
e
- Git push/fetch by pressing
g
, followed byp
orf
- Undo last change by pressing
u
You can install jjui
using nix from the unstable channel.
nix-env -iA nixpkgs.jjui
You can build jjui
from source.
git clone https://github.com/idursun/jjui.git
cd jjui
go install cmd/jjui/main.go
go install github.com/idursun/jjui/cmd/jjui@latest
You can download pre-built binaries from the releases page.
It's compatible with jj v0.21+.
Feel free to submit a pull request.