Installation and setup¶
Installation¶
See below for how to build from source. There are also pre-built binaries for Windows, Mac, or Linux (musl).
Linux¶
On most distributions, you'll need to build from source using cargo
directly.
Build using cargo
¶
First make sure that you have the libssl-dev
, openssl
, and pkg-config
packages installed by running something like this:
sudo apt-get install libssl-dev openssl pkg-config
Now run:
cargo install --git https://github.com/martinvonz/jj.git --locked --bin jj jj-cli
Nix OS¶
If you're on Nix OS you can use the flake for this repository.
For example, if you want to run jj
loaded from the flake, use:
nix run 'github:martinvonz/jj'
You can also add this flake url to your system input flakes. Or you can install the flake to your user profile:
nix profile install 'github:martinvonz/jj'
Homebrew¶
If you use linuxbrew, you can run:
brew install jj
Mac¶
Homebrew¶
If you use Homebrew, you can run:
brew install jj
MacPorts¶
You can also install jj
via MacPorts (as
the jujutsu
port):
sudo port install jujutsu
From Source¶
You may need to run some or all of these:
xcode-select --install
brew install openssl
brew install pkg-config
export PKG_CONFIG_PATH="$(brew --prefix)/opt/openssl@3/lib/pkgconfig"
Now run:
cargo install --git https://github.com/martinvonz/jj.git --locked --bin jj jj-cli
Windows¶
Run:
cargo install --git https://github.com/martinvonz/jj.git --locked --bin jj jj-cli --features vendored-openssl
Initial configuration¶
You may want to configure your name and email so commits are made in your name.
$ jj config set --user user.name "Martin von Zweigbergk"
$ jj config set --user user.email "martinvonz@google.com"
Command-line completion¶
To set up command-line completion, source the output of
jj util completion --bash/--zsh/--fish
. Exactly how to source it
depends on your shell.
Bash¶
source <(jj util completion) # --bash is the default
Zsh¶
autoload -U compinit
compinit
source <(jj util completion --zsh)
Fish¶
jj util completion --fish | source
Xonsh¶
source-bash $(jj util completion)