jj-bookmark-create(1)
π NAME π
okay bestie, listen up: jj-bookmark-create β it makes a brand new bookmark. that's it, that's the vibe. β¨
π SYNOPSIS π
jj bookmark create [-r|--revision] [-R|--repository]
[--ignore-working-copy] [--no-integrate-operation] [--ignore-immutable]
[--at-operation] [--debug] [--color] [--quiet] [--no-pager] [--config]
[--config-file] [-h|--help] <NAMES>
πΈ DESCRIPTION πΈ
Create a new bookmark. π
like... you're literally creating a bookmark. main character energy fr fr. π¦
β¨ OPTIONS β¨
-r,--revision <REVSET>β the revision the bookmark is gonna point at. default is@(aka you, right now, the working-copy commit, icon behavior honestly). π-h,--helpβ print the help. note that-hgives you the summary version, so if you want the whole novel, drop the short one. π<NAMES>β the bookmarks you wanna create. plural! you can make more than one, go off. π
π GLOBAL OPTIONS π
these ones aren't just for this command, they're the everywhere options. no cap.
-R,--repository <REPOSITORY>β the path to the repository you wanna operate on.
by default, Jujutsu goes looking for the closest .jj/ directory in an ancestor of wherever your current working directory is. it's giving "i'll find it myself". π
--ignore-working-copyβ don't snapshot the working copy, and don't update it.
so normally Jujutsu snapshots your working copy at the beginning of every single command. and at the end of the command it also updates the working copy, but only if the command modified the working-copy commit (@). if you'd rather skip the snapshotting and just look at a possibly stale working-copy commit, this flag is your girl. --ignore-working-copy is super handy, like, in a command prompt, especially if you've got some other process committing the working copy for you.
oh and heads up: loading the repo at a specific operation with --at-operation implies --ignore-working-copy. automatic. π
--no-integrate-operationβ run the command like normal but don't integrate any operations.
when you pass this, the operations still get created as usual, but they do not get integrated into the operation log. and the working copy won't be updated either. periodt.
the command prints the resulting operation ID. you can hand that to e.g. jj --at-op to peek at the resulting repo state, or pass it to jj op restore to restore the repo to that state. you can also pass the ID to jj op integrate to integrate the operation. multitasking queen. π«Ά
note that this does not prevent side effects outside the repo!! for example, jj git push --no-integrate-operation will still perform the push. π so like, be aware bestie.
--ignore-immutableβ allow rewriting immutable commits.
by default Jujutsu prevents rewriting commits in the configured set of immutable commits. this option disables that check and lets you rewrite any commit except the root commit. wild.
this option only affects the check, that's it. it does not affect the immutable_heads() revset or the immutable template keyword. no cap.
--at-operation <AT_OPERATION>β the operation to load the repo at.
by default Jujutsu loads the repo at the most recent operation, or at the merge of the divergent operations if there are any.
you can use --at-op=<operation ID> to see what the repo looked like at an earlier operation. for example, jj --at-op=<operation ID> st shows you what jj st would have shown you when that given operation had just finished. and --at-op=@ is pretty much the same as the default, except that divergent operations will never be merged.
use jj op log to find the operation ID you want. any unambiguous prefix of the operation ID is enough. slay. β
when you're loading the repo at an earlier operation, the working copy gets ignored, as if you'd specified --ignore-working-copy.
it is possible to run mutating commands while loading the repo at an earlier operation. doing that is the same as having run concurrent commands starting at that earlier operation. there's rarely a reason to do that, but... you can. it's possible. π€·βοΈ
--debugβ enable debug logging. for when you're in your detective era. π--color <WHEN>β when to colorize the output.
possible values:
alwaysneverdebugauto
--quietβ silence non-primary command output.
for example, jj file list will still list files, but it won't tell you if the working copy was snapshotted or if descendants were rebased. so, the tea but not the commentary.
warnings and errors will still be printed though. can't silence those, sorry bestie. π
--no-pagerβ disable the pager. scroll for yourself, queen. π--config <NAME=VALUE>β extra configuration options, and yes you can repeat it.
the name should be specified as TOML dotted keys. the value should be specified as a TOML expression. and if the string value isn't enclosed by any TOML constructs (like array notation), you can just skip the quotes. easy. π
--config-file <PATH>β extra configuration files, and yep, this one can be repeated too. π
and that's the whole page, bestie! π this one came out of the jj manual, page jj-bookmark-create(1) β and the footer just says create, so like, that's the name of the game around here. go forth and create bookmarks, you absolute icon. ππ
π¦
π¦ where this page comes from
- alpine 3.24: jujutsu-doc 0.42.0-r0 Β· Apache-2.0
- arch rolling: jujutsu 0.46.0-1 Β· Apache-2.0
- nixos 26.05: jujutsu 0.41.0
- nixpkgs unstable: jujutsu 0.46.0
- ubuntu stonking: jujutsu 0.44.0-1 Β· Apache-2.0
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms