Skip to content

Commit c532a1b

Browse files
committed
docs: update changelog with checkout/merge deprecations
Summary: Put both notices together at once, for ease of reading and understanding. Signed-off-by: Austin Seipp <aseipp@pobox.com> Change-Id: I2aedb42fdab346b21990a106433512d7ec119ad4
1 parent 3758b0e commit c532a1b

File tree

1 file changed

+26
-0
lines changed

1 file changed

+26
-0
lines changed

CHANGELOG.md

+26
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,32 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
77

88
## [Unreleased]
99

10+
### Deprecations
11+
12+
* `jj checkout` and `jj merge` are both deprecated; use `jj new` instead to
13+
replace both of these commands in all instances.
14+
15+
**Rationale**: `jj checkout` and `jj merge` both implement identical
16+
functionality, which is a subset of `jj new`. `checkout` creates a new working
17+
copy commit on top of a single specified revision, i.e. with one parent.
18+
`merge` creates a new working copy commit on top of *at least* two specified
19+
revisions, i.e. with two or more parents.
20+
21+
The only difference between these commands and `jj new`, which *also* creates
22+
a new working copy commit, is that `new` can create a working copy commit on
23+
top of any arbitrary number of revisions, so it can handle both the previous
24+
cases at once. The only actual difference between these three commands is the
25+
command syntax and their name. These names were chosen to be familiar to users
26+
of other version control systems, but we instead encourage all users to adopt
27+
`jj new` instead; it is more general and easier to remember than both of
28+
these.
29+
30+
`jj checkout` and `jj merge` will no longer be shown as part of `jj help`, but
31+
will still function for now, emitting a warning about their deprecation.
32+
33+
**Deadline**: `jj checkout` and `jj merge` will be deleted and are expected
34+
become a **hard error later in 2024**.
35+
1036
### Breaking changes
1137

1238
* (Minor) Diff summaries (e.g. `jj diff -s`) now use `D` for "Deleted" instead

0 commit comments

Comments
 (0)