Aquesta és una versió anterior. La versió actual és la 0.46.0. jj 0.46.0 · Data de publicació:
Fitxers d’instal·lació 0.35.0
| Arquitectura | Tipus | Àmbit | Mida del fitxer | Baixa | SHA256 |
|---|---|---|---|---|---|
| 64 bits | ZIP → Portable | — | — | github.com | VirusTotal |
L’enllaç i l’SHA256 provenen del manifest comunitari del Gestor de paquets del Windows. Convé comparar el hash del fitxer baixat abans d’executar-lo.
Notes de la versió
About
jj is a Git-compatible version control system that is both simple and powerful. See
the installation instructions to get started.
Release highlights
- Workspaces can now have their own separate configuration. For instance, you
can use jj config set --workspace to update a configuration option only in
the current workspace.
- After creating a local bookmark, it is now possible to use jj bookmark track
to associate the bookmark with a specific remote before pushing it. When
pushing a tracked bookmark, it is not necessary to use --allow-new.
- The new jj git colocation enable and jj git colocation disable commands
allow converting between colocated and non-colocated workspaces.
Breaking changes
- The remote_bookmarks(remote=pattern) revset now includes Git-tracking
bookmarks if the specified pattern matches git. The default is
remote=~exact:"git" as before.
- The deprecated flag --summary of jj abandon has been removed.
- The deprecated command jj backout has been removed, use jj revert instead.
- The following deprecated config options have been removed:
- signing.sign-all
- core.watchman.register_snapshot_trigger
- diff.format
Deprecations
- jj bisect run --command <cmd> is deprecated in favor of
jj bisect run -- <cmd>.
- jj metaedit --update-committer-timestamp was renamed to
jj metaedit --force-rewrite since the old name (and help text)
incorrectly suggested that the committer name and email would not
be updated.
New features
- Workspaces may have an additional layered configuration, located at
.jj/workspace-config.toml. jj config subcommands which took layer options
like --repo now also support --workspace.
- jj bookmark track can now associate new local bookmarks with remote.
Tracked bookmarks can be pushed without --allow-new.
#7072
- The new jj git colocation command provides sub-commands to show the
colocation state (status), to convert a non-colocated workspace into
a colocated workspace (enable), and vice-versa (disable).
- New jj tag set/delete commands to create/update/delete tags locally.
Created/updated tags are currently always exported to Git as lightweight
tags. If you would prefer them to be exported as annotated tags, please give
us feedback on #7908.
- Templates now support a .split(separator, [limit]) method on strings to
split a string into a list of substrings.
- -G is now available as a short form of --no-graph in jj log, jj evolog,
jj op log, jj op show and jj op diff.
- jj metaedit now accepts -m/--message option to non-interactively update
the change description.
- The CryptographicSignature.key() template method now also works for SSH
signatures and returns the corresponding public key fingerprint.
- Added template-aliases.empty_commit_marker. Users can override this value in
their config to change the "(empty)" label on empty commits.
- Add support for --when.workspaces config scopes.
- Add support for --when.hostnames config scopes. This allows configuration to
be conditionally applied based on the hostname set in operation.hostname.
- jj bisect run accepts the command and arguments to pass to the command
directly as positional arguments, such as
jj bisect --range=..main -- cargo check --all-targets.
- Divergent changes are no longer marked red in immutable revisions. Since the
revision is immutable, the user shouldn't take any action, so the red color
was unnecessarily alarming.
- New commit template keywords local/remote_tags to show only local/remote
tags. These keywords may be useful in non-colocated Git repositories where
local and exported @git tags can point to different revisions.
- jj git clone now supports the --branch option to specify the branch(es)
to fetch during clone. If present, the first matching branch is used as the
working-copy parent.
- Revsets now support logical operators in string patterns.
Fixed bugs
- jj metaedit --author-timestamp twice with the same value no longer
edits the change twice in some cases.
- jj squash: fixed improper revision rebase when both --insert-after and
--insert-before were used.
- jj undo can now revert "fetch"/"import" operation that involves tag updates.
#6325
- Fixed parsing of files(expr) revset expression including parentheses.
#7747
- Fixed jj describe --stdin to append a final newline character.
Contributors
Thanks to the people who made this release happen!
- Alpha Chen (@kejadlen)
- Angel Ezquerra (@AngelEzquerra)
- ase (@adamse)
- Austin Seipp (@thoughtpolice)
- Benjamin Brittain (@benbrittain)
- bipul (@bipulmgr)
- Brian Schroeder (@bts)
- Bryce Berger (@bryceberger)
- Cole Helbling (@cole-h)
- Daniel Luz (@mernen)
- David Higgs (@higgsd)
- Defelo (@Defelo)
- Fedor (@sheremetyev)
- Gabriel Goller (@kaffarell)
- Gaëtan Lehmann (@glehmann)
- George Christou (@gechr)
- Ilya Grigoriev (@ilyagr)
- Isaac Corbrey (@icorbrey)
- James Coman (@jamescoman)
- Joseph Lou (@josephlou5)
- Lander Brandt (@landaire)
- Martin von Zweigbergk (@martinvonz)
- Michael Chirico (@MichaelChirico)
- Owen Brooks (@owenbrooks)
- Peter Schilling (@schpet)
- Philip Metzger (@PhilipMetzger)
- Remo Senekowitsch (@senekor)
- Ross Smyth (@RossSmyth)
- Scott Taylor (@scott2000)
- Steve Fink (@hotsphink)
- Steve Klabnik (@steveklabnik)
- Theo Buehler (@botovq)
- Theodore Dubois (@tbodt)
- Theodore Keloglou (@sirodoht)
- Yuya Nishihara (@yuja)