v0.14.0 #2991
martinvonz
started this conversation in
General
v0.14.0
#2991
Replies: 0 comments
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.
-
Deprecations
jj checkoutandjj mergeare both deprecated; usejj newinstead toreplace both of these commands in all instances.
Rationale:
jj checkoutandjj mergeboth implement identicalfunctionality, which is a subset of
jj new.checkoutcreates a new workingcopy commit on top of a single specified revision, i.e. with one parent.
mergecreates a new working copy commit on top of at least two specifiedrevisions, i.e. with two or more parents.
The only difference between these commands and
jj new, which also createsa new working copy commit, is that
newcan create a working copy commit ontop of any arbitrary number of revisions, so it can handle both the previous
cases at once. The only actual difference between these three commands is the
command syntax and their name. These names were chosen to be familiar to users
of other version control systems, but we instead encourage all users to adopt
jj newinstead; it is more general and easier to remember than both ofthese.
jj checkoutandjj mergewill no longer be shown as part ofjj help, butwill still function for now, emitting a warning about their deprecation.
Deadline:
jj checkoutandjj mergewill be deleted and are expectedbecome a hard error later in 2024.
jj init --gitandjj init --git-repoare now deprecated and will be removedin the near future.
Use
jj git initinstead.Breaking changes
(Minor) Diff summaries (e.g.
jj diff -s) now useDfor "Deleted" insteadof
Rfor "Removed". @joyously pointed out thatRcould also mean"Renamed".
jj util completionnow takes the shell as a positional argument, not a flag.the previous behavior is deprecated, but supported for now. it will be removed
in the future.
New features
jj util completionnow supports powershell and elvish.Official binaries for macOS running on Apple Silicon (
aarch64-apple-darwin)are now available, alongside the existing macOS x86 binaries.
New
jj op abandoncommand is added to clean up the operation history. Gitrefs and commit objects can be further compacted by
jj util gc.jj util gcnow removes unreachable operation, view, and Git objects.jj branch renamewill now warn if the renamed branch has a remote branch, sincethose will have to be manually renamed outside of
jj.jj git pushgained a--trackedoption, to push all the tracked branches.There's now a virtual root operation, similar to the virtual root
commit. It appears at the end of
jj op log.jj config listgained a--include-overriddenoption to allowprinting overridden config values.
jj config listnow accepts--useror--repooption to specifyconfig origin.
New
jj config pathcommand to print the config file path without launchingan editor.
jj tag listcommand prints imported git tags.jj nextandjj prevnow prompt in the event of the next/previous commitbeing ambiguous, instead of failing outright.
jj resolvenow displays the file being resolved.jj workspace rootwas aliased tojj root, for ease of discoverabilityjj diffno longer shows the contents of binary files.jj gitnow has aninitcommand that initializes a git backed repo.New template function
surround(prefix, suffix, content)is added.Fixed bugs
Fixed snapshots of symlinks in
gitignore-d directory.#2878
Fixed data loss in dirty working copy when checked-out branch is rebased or
abandoned by Git.
#2876
Contributors
Thanks to the people who made this release happen!
This discussion was created from the release v0.14.0.
Beta Was this translation helpful? Give feedback.
All reactions