v0.28.0
#6221
Replies: 2 comments 12 replies
-
FYI: The |
Beta Was this translation helpful? Give feedback.
1 reply
-
In addition to using ❯ jj --version
jj 0.28.0
❯ jj config path --user
/Users/zhaolei/Library/Application Support/jj/config.toml
❯ set -gx XDG_CONFIG_HOME $HOME/.config
❯ echo $XDG_CONFIG_HOME
/Users/zhaolei/.config
❯ jj config path --user
/Users/zhaolei/Library/Application Support/jj/config.toml |
Beta Was this translation helpful? Give feedback.
11 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
About
jj is a Git-compatible version control system that is both simple and powerful. See the installation instructions to get started.
Release highlights
jj's configuration can now be split into multiple files more easily.
jj resolve
now accepts built-in tools:ours
and:theirs
.In colocated repos, newly-created files will now appear in
git diff
.A long-standing bug relating to empty files in the built-in diff editor was
fixed. #3702
Breaking changes
The minimum supported Rust version (MSRV) is now 1.84.0.
The
git.push-branch-prefix
config has been removed in favor ofgit.push-bookmark-prefix
.jj abandon
no longer supports--summary
to suppress the list of abandonedcommits. The list won't show more than 10 commits to not clutter the console.
jj unsquash
has been removed in favor ofjj squash
andjj diffedit --restore-descendants
.The
jj untrack
subcommand has been removed in favor ofjj file untrack
.The following deprecated revset functions have been removed:
branches()
,remote_branches()
,tracked_remote_branches()
, anduntracked_remote_branches()
, which were renamed to "bookmarks".file()
andconflict()
, which were renamed to plural forms.files(x, y, ..)
with multiple patterns. Usefiles(x|y|..)
instead.The following deprecated template functions have been removed:
branches()
,local_branches()
, andremote_branches()
, which wererenamed to "bookmarks".
The flags
--all
and--tracked
onjj git push
by themself do not causedeleted bookmarks to be pushed anymore, as an additional safety measure. They
can now be combined with
--deleted
instead.Deprecations
core.watchman.register_snapshot_trigger
has been renamed tocore.watchman.register-snapshot-trigger
for consistency with other configuration options.jj backout
is deprecated in favor ofjj revert
.New features
jj sign
can now sign with PKCS#12 certificates through thegpgsm
backend.jj sign
will automatically use the gpg key associated with the author's emailin the absence of a
signing.key
configuration.Multiple user configs are now supported and are loaded in the following precedence order:
$HOME/.jjconfig.toml
$XDG_CONFIG_HOME/jj/config.toml
$XDG_CONFIG_HOME/jj/conf.d/*.toml
The
JJ_CONFIG
environment variable can now contain multiple paths separatedby a colon (or semicolon on Windows).
The command
jj config list
now supports showing the origin of each variablevia the
builtin_config_list_detailed
template.jj config {edit,set,unset}
now prompt when multiple config files are found.jj diff -r
now allows multiple revisions (as long as there are no gaps inthe revset), such as
jj diff -r 'mutable()'
.jj git push
now accepts a--named NAME=REVISION
argument to create a namedbookmark and immediately push it.
The 'how to resolve conflicts' hint that is shown when conflicts appear can
be hidden by setting
hints.resolving-conflicts = false
.jj op diff
andjj op log --op-diff
now show changes to which commitscorrespond to working copies.
jj op log -d
is now an alias forjj op log --op-diff
.jj bookmark move --to/--from
can now be abbreviated tojj bookmark move -t/-f
jj bookmark list
now supports--sort
option. Similar togit branch --sort
.See
jj bookmark list --help
for more details.A new command
jj revert
is added, which is similar tojj backout
butadds the
--destination
,--insert-after
, and--insert-before
options tocustomize the location of reverted commits.
A new command
jj git root
is added, which prints the location of the Gitdirectory of a repository using the Git backend.
In colocated repos, any files that jj considers added in the working copy will
now show up in
git diff
(as if you had rungit add --intent-to-add
onthem).
Reversing colors is now supported. For example, to highlight words by
reversing colors rather than underlining, you can set
colors."diff token"={ underline = false, reverse = true }
in your config.Added
revsets.log-graph-prioritize
, which can be used to configurewhich branch in the
jj log
graph is displayed on the left instead of@
(e.g.
coalesce(description("megamerge\n"), trunk())
)jj resolve
now accepts new built-in merge tools:ours
and:theirs
.These merge tools accept side Fix readme typo #1 and side Add support for symlinks on Windows #2 of the conflict respectively.
Fixed bugs
jj log -p --stat
now shows diff stats as well as the default color-words/gitdiff output. #5986
The built-in diff editor now correctly handles deleted files.
#3702
The built-in diff editor now correctly retains the executable bit on newly
added files when splitting. #3846
jj config set
/--config
value parsing rule is relaxed in a way thatunquoted apostrophes are allowed.
#5748
jj fix
could previously create new conflicts when a descendant of a fixedrevision was already correctly formatted.
Contributors
Thanks to the people who made this release happen!
This discussion was created from the release v0.28.0.
Beta Was this translation helpful? Give feedback.
All reactions