2022-03-12 21:48:51 +03:00
|
|
|
# Changelog
|
|
|
|
|
|
|
|
All notable changes to this project will be documented in this file.
|
|
|
|
|
|
|
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
|
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
|
|
|
|
|
|
## [Unreleased]
|
|
|
|
|
2022-04-06 21:00:27 +03:00
|
|
|
### New features
|
|
|
|
|
2022-04-13 20:53:50 +03:00
|
|
|
* `jj rebase` now accepts a `--branch/-b <revision>` argument, which can be used
|
|
|
|
instead of `-r` or `-s` to specify which commits to rebase. It will rebase the
|
2022-04-14 09:53:35 +03:00
|
|
|
whole branch, relative to the destination. The default mode has changed from
|
|
|
|
`-r @` to `-b @`.
|
2022-04-13 20:53:50 +03:00
|
|
|
|
2022-04-06 21:00:27 +03:00
|
|
|
* The new `jj print` command prints the contents of a file in a revision.
|
|
|
|
|
2022-04-09 20:27:17 +03:00
|
|
|
* `jj move` and `jj squash` now lets you limit the set of changes to move by
|
|
|
|
specifying paths on the command line (in addition to the `--interactive`
|
|
|
|
mode). For example, use `jj move --to @-- foo` to move the changes to file
|
|
|
|
(or directory) `foo` in the working copy to the grandparent commit.
|
2022-04-09 19:58:33 +03:00
|
|
|
|
2022-04-09 21:35:28 +03:00
|
|
|
* `jj split` now lets you specify on the CLI which paths to include in the first
|
|
|
|
commit. The interactive diff-editing is not started when you do that.
|
|
|
|
|
2022-04-10 02:14:42 +03:00
|
|
|
* The `$JJ_CONFIG` environment variable can now point to a directory. If it
|
|
|
|
does, all files in the directory will be read, in alphabetical order.
|
|
|
|
|
2022-04-10 08:42:27 +03:00
|
|
|
* You can now override the `$EDITOR` environment variable by setting the
|
2022-04-10 09:20:36 +03:00
|
|
|
`ui.editor` config. There is also a new `$JJ_EDITOR` environment variable,
|
|
|
|
which has even higher priority than the config.
|
2022-04-10 08:42:27 +03:00
|
|
|
|
2022-04-14 07:26:21 +03:00
|
|
|
* The new revset function `connected(x)` is the same as `x:x`.
|
|
|
|
|
2022-04-13 23:55:47 +03:00
|
|
|
* The new revset function `roots(x)` finds commits in the set that are not
|
|
|
|
descendants of other commits in the set.
|
|
|
|
|
2022-04-07 09:25:01 +03:00
|
|
|
### Fixed bugs
|
|
|
|
|
2022-04-06 22:18:24 +03:00
|
|
|
* When rebasing a conflict where one side modified a file and the other side
|
|
|
|
deleted it, we no longer automatically resolve it in favor of the modified
|
|
|
|
content (this was a regression from commit c0ae4b16e8c4).
|
|
|
|
|
2022-04-07 09:25:01 +03:00
|
|
|
* Errors are now printed to stderr (they used to be printed to stdout).
|
|
|
|
|
2022-04-15 09:03:08 +03:00
|
|
|
* Updating the working copy to a commit where a file's executable bit changed
|
|
|
|
but the contents was the same used to lead to a crash. That has now been
|
|
|
|
fixed.
|
|
|
|
|
2022-04-09 19:20:00 +03:00
|
|
|
* `jj untrack` now requires at least one path (allowing no arguments was a UX
|
|
|
|
bug).
|
|
|
|
|
2022-04-11 20:40:56 +03:00
|
|
|
* `jj rebase` now requires at least one destination (allowing no arguments was a
|
|
|
|
UX bug).
|
|
|
|
|
2022-04-10 01:53:32 +03:00
|
|
|
* You now get a proper error message instead of a crash when `$EDITOR` doesn't
|
|
|
|
exist or exits with an error.
|
|
|
|
|
2022-04-03 08:56:59 +03:00
|
|
|
## [0.4.0] - 2022-04-02
|
|
|
|
|
2022-03-19 20:17:30 +03:00
|
|
|
### Breaking changes
|
|
|
|
|
|
|
|
* Dropped support for config in `~/.jjconfig`. Your configuration is now read
|
|
|
|
from `<config dir>/jj/config.toml`, where `<config dir>` is
|
|
|
|
`${XDG_CONFIG_HOME}` or `~/.config/` on Linux,
|
|
|
|
`~/Library/Application Support/` on macOS, and `~\AppData\Roaming\` on
|
|
|
|
Windows.
|
|
|
|
|
2022-03-19 20:37:13 +03:00
|
|
|
### New features
|
|
|
|
|
|
|
|
* You can now set an environment variable called `$JJ_CONFIG` to a path to a
|
|
|
|
config file. That will then be read instead of your regular config file. This
|
|
|
|
is mostly intended for testing and scripts.
|
|
|
|
|
2022-03-19 20:00:13 +03:00
|
|
|
* The [standard `$NO_COLOR` environment variable](https://no-color.org/) is now
|
|
|
|
respected.
|
|
|
|
|
2022-03-27 00:02:04 +03:00
|
|
|
* `jj new` now lets you specify a description with `--message/-m`.
|
|
|
|
|
2022-03-27 00:53:51 +03:00
|
|
|
* When you check out a commit, the old commit no longer automatically gets
|
|
|
|
abandoned if it's empty and has descendants, it only gets abandoned if it's
|
|
|
|
empty and does not have descendants.
|
|
|
|
|
2022-03-17 06:58:04 +03:00
|
|
|
* (#111) When undoing an earlier operation, any new commits on top of commits
|
|
|
|
from the undone operation will be rebased away. For example, let's say you
|
|
|
|
rebase commit A so it becomes a new commit A', and then you create commit B
|
|
|
|
on top of A'. If you now undo the rebase operation, commit B will be rebased
|
|
|
|
to be on top of A instead. The same logic is used if the repo was modified
|
|
|
|
by concurrent operations (so if one operation added B on top of A, and one
|
|
|
|
operation rebased A as A', then B would be automatically rebased on top of
|
|
|
|
A'). See #111 for more examples.
|
|
|
|
|
2022-03-28 12:12:08 +03:00
|
|
|
* `jj log` now accepts `-p`/`--patch` option.
|
|
|
|
|
2022-03-29 09:03:37 +03:00
|
|
|
### Fixed bugs
|
|
|
|
|
2022-03-28 16:46:21 +03:00
|
|
|
* Fixed crash on `jj init --git-repo=.` (it almost always crashed).
|
|
|
|
|
2022-03-29 09:03:37 +03:00
|
|
|
* When sharing the working copy with a Git repo, the automatic importing and
|
|
|
|
exporting (sometimes?) didn't happen on Windows.
|
|
|
|
|
2022-03-17 09:01:42 +03:00
|
|
|
## [0.3.3] - 2022-03-16
|
|
|
|
|
|
|
|
No changes, only trying to get the automated build to work.
|
|
|
|
|
|
|
|
## [0.3.2] - 2022-03-16
|
|
|
|
|
|
|
|
No changes, only trying to get the automated build to work.
|
|
|
|
|
2022-03-14 07:51:21 +03:00
|
|
|
## [0.3.1] - 2022-03-13
|
|
|
|
|
2022-03-13 18:14:01 +03:00
|
|
|
### Fixed bugs
|
|
|
|
|
|
|
|
- (#131) Fixed crash when `core.excludesFile` pointed to non-existent file, and
|
|
|
|
made leading `~/` in that config expand to `$HOME/`
|
|
|
|
|
2022-03-12 21:48:51 +03:00
|
|
|
## [0.3.0] - 2022-03-12
|
|
|
|
|
|
|
|
Last release before this changelog started.
|