402bca0f0f
update to 0.14.0 OBS-URL: https://build.opensuse.org/request/show/1145164 OBS-URL: https://build.opensuse.org/package/show/devel:tools:scm/jujutsu?expand=0&rev=9
199 lines
9.6 KiB
Plaintext
199 lines
9.6 KiB
Plaintext
-------------------------------------------------------------------
|
|
Thu Feb 8 06:50:56 UTC 2024 - Johannes Kastl <opensuse_buildservice@ojkastl.de>
|
|
|
|
- update to 0.14.0:
|
|
* Deprecations
|
|
- jj checkout and jj merge are both deprecated; use jj new
|
|
instead to replace both of these commands in all instances.
|
|
Rationale: jj checkout and jj merge both implement identical
|
|
functionality, which is a subset of jj new. checkout creates
|
|
a new working copy commit on top of a single specified
|
|
revision, i.e. with one parent. merge creates a new working
|
|
copy commit on top of at least two specified revisions, i.e.
|
|
with two or more parents.
|
|
The only difference between these commands and jj new, which
|
|
also creates a new working copy commit, is that new can
|
|
create a working copy commit on top 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 new instead; it is
|
|
more general and easier to remember than both of these.
|
|
jj checkout and jj merge will no longer be shown as part of
|
|
jj help, but will still function for now, emitting a warning
|
|
about their deprecation.
|
|
Deadline: jj checkout and jj merge will be deleted and are
|
|
expected become a hard error later in 2024.
|
|
- jj init --git and jj init --git-repo are now deprecated and
|
|
will be removed in the near future. Use jj git init instead.
|
|
* Breaking changes
|
|
- (Minor) Diff summaries (e.g. jj diff -s) now use D for
|
|
"Deleted" instead of R for "Removed". @joyously pointed out
|
|
that R could also mean "Renamed".
|
|
- jj util completion now 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 completion now 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 abandon command is added to clean up the operation
|
|
history. Git refs and commit objects can be further compacted
|
|
by jj util gc.
|
|
- jj util gc now removes unreachable operation, view, and Git
|
|
objects.
|
|
- jj branch rename will now warn if the renamed branch has a
|
|
remote branch, since those will have to be manually renamed
|
|
outside of jj.
|
|
- jj git push gained a --tracked option, 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 list gained a --include-overridden option to allow
|
|
printing overridden config values.
|
|
- jj config list now accepts --user or --repo option to specify
|
|
config origin.
|
|
- New jj config path command to print the config file path
|
|
without launching an editor.
|
|
- jj tag list command prints imported git tags.
|
|
- jj next and jj prev now prompt in the event of the
|
|
next/previous commit being ambiguous, instead of failing
|
|
outright.
|
|
- jj resolve now displays the file being resolved.
|
|
- jj workspace root was aliased to jj root, for ease of
|
|
discoverability
|
|
- jj diff no longer shows the contents of binary files.
|
|
- jj git now has an init command 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
|
|
|
|
-------------------------------------------------------------------
|
|
Sun Jan 7 15:42:43 UTC 2024 - Johannes Kastl <opensuse_buildservice@ojkastl.de>
|
|
|
|
- update to 0.13.0:
|
|
* Breaking changes
|
|
- `jj git fetch` no longer imports new remote branches as local
|
|
branches. Set `git.auto-local-branch = true` to restore the
|
|
old behavior.
|
|
* New features
|
|
- Information about new and resolved conflicts is now printed
|
|
by every command.
|
|
- `jj branch` has gained a new `rename` subcommand that allows
|
|
changing a branch name atomically. `jj branch help rename`
|
|
for details.
|
|
* Fixed bugs
|
|
- Command aliases can now be loaded from repository config
|
|
relative to the current working directory.
|
|
[#2414](https://github.com/martinvonz/jj/issues/2414)
|
|
|
|
-------------------------------------------------------------------
|
|
Wed Dec 6 12:15:35 UTC 2023 - Johannes Kastl <kastl@b1-systems.de>
|
|
|
|
- update to 0.12.0:
|
|
* Breaking changes
|
|
- The remote_branches() revset no longer includes branches
|
|
exported to the Git repository (so called Git-tracking
|
|
branches.)
|
|
- jj branch set no longer creates a new branch. Use jj branch
|
|
create instead.
|
|
- jj init --git in an existing Git repository now errors and
|
|
exits rather than creating a second Git store.
|
|
* New features
|
|
- jj workspace add can now take multiple --revision arguments,
|
|
which will create a new workspace with its working-copy
|
|
commit on top of all the parents, as if you had run
|
|
jj new r1 r2 r3 ....
|
|
- You can now set git.abandon-unreachable-commits = false to
|
|
disable the usual behavior where commits that became
|
|
unreachable in the Git repo are abandoned (#2504).
|
|
- jj new gained a --no-edit option to prevent editing the newly
|
|
created commit. For example, jj new a b --no-edit -m Merge
|
|
creates a merge commit without affecting the working copy.
|
|
- jj rebase now takes the flag --skip-empty, which doesn't copy
|
|
over commits that would become empty after a rebase.
|
|
- There is a new jj util gc command for cleaning up the
|
|
repository storage. For now, it simply runs git gc on the
|
|
backing Git repo (when using the Git backend).
|
|
* Fixed bugs
|
|
- Fixed another file conflict resolution issue where jj status
|
|
would disagree with the actual file content. #2654
|
|
|
|
-------------------------------------------------------------------
|
|
Wed Nov 01 19:12:45 UTC 2023 - kastl@b1-systems.de
|
|
|
|
- Update to version 0.11.0:
|
|
* Breaking changes
|
|
- Conflicts are now stored in a different way. Commits written
|
|
by a new jj binary will not be read correctly by older jj
|
|
binaries. The new model solves some performance problems with
|
|
the old model. For example, jj log should be noticeably
|
|
faster on large repos. You may need to create a new clone to
|
|
see the full speedup.
|
|
- The remote_branches() revset now includes branches exported
|
|
to the Git repository (so called Git-tracking branches.) Use
|
|
remote_branches(remote=exact:"origin") to query branches of
|
|
certain remote.
|
|
- Status messages are now printed to stderr.
|
|
- jj config set now interprets the value as TOML also if it's a
|
|
valid TOML array or table. For example, jj config set --user
|
|
'aliases.n' '["new"]'
|
|
- Remote branches now have tracking or non-tracking flags. The
|
|
git.auto-local-branch setting is applied only to newly
|
|
fetched remote branches. Existing remote branches are
|
|
migrated as follows:
|
|
- If local branch exists, the corresponding remote branches
|
|
are considered tracking branches.
|
|
- Otherwise, the remote branches are non-tracking branches.
|
|
- If the deduced tracking flags are wrong, use jj branch
|
|
track/untrack commands to fix them up.
|
|
- See automatic local branch creation for details.
|
|
- Non-tracking remote branches aren't listed by default. Use jj
|
|
branch list --all to show all local and remote branches.
|
|
- It's not allowed to push branches if non-tracking remote
|
|
branches of the same name exist.
|
|
- Pushing deleted/moved branches no longer abandons the local
|
|
commits referenced by the remote branches.
|
|
- jj git fetch --branch now requires glob: prefix to expand *
|
|
in branch name.
|
|
* New features
|
|
- jj's stable release can now be installed with cargo binstall
|
|
jj-cli.
|
|
- jj workspace add now takes a --revision argument.
|
|
- jj workspace forget can now forget multiple workspaces at
|
|
once.
|
|
- branches()/remote_branches()/author()/committer()/description()
|
|
revsets now support glob matching.
|
|
- jj branch delete/forget/list, and jj git push --branch now
|
|
support string pattern syntax. The --glob option is
|
|
deprecated in favor of glob: pattern.
|
|
- The branches/tags/git_refs/git_head template keywords now
|
|
return a list of RefNames. They were previously pre-formatted
|
|
strings.
|
|
- The new template keywords local_branches/remote_branches are
|
|
added to show only local/remote branches.
|
|
- jj workspace add now preserves all parents of the old
|
|
working-copy commit instead of just the first one.
|
|
- jj rebase -r gained the ability to rebase a revision A onto a
|
|
descendant of A.
|
|
* Fixed bugs
|
|
- Updating the working copy to a commit where a file that's
|
|
currently ignored in the working copy no longer leads to a
|
|
crash (#976).
|
|
- Conflicts in executable files can now be resolved just like
|
|
conflicts in non-executable files (#1279).
|
|
- jj new --insert-before and --insert-after now respect
|
|
immutable revisions (#2468).
|
|
|
|
-------------------------------------------------------------------
|
|
Mon Oct 9 15:49:09 UTC 2023 - Johannes Kastl <kastl@b1-systems.de>
|
|
|
|
- new package jujutsu: A Git-compatible DVCS that is both simple
|
|
and powerful
|