I had a few changes left over with default checked out, and ran this sequence with 5.3.1: $ hg rebase -s 45368 -d stable abort: uncommitted changes $ hg diff diff --git a/tests/test-phabricator.t b/tests/test-phabricator.t --- a/tests/test-phabricator.t +++ b/tests/test-phabricator.t ... $ hg rebase -s 45368 -d stable --dry-run starting dry-run rebase; repository will not be changed rebasing 45368:f7b61b78584e "xxx-doc: fix typos in upgrade and revlog" dry-run rebase completed successfully; run without -n/--dry-run to perform this rebase $ hg diff $ hg st There was a noticeable pause after the suggestion to run without -n, so that may have been when it happened.
It looks like `--confirm` also has the problem when answering 'no', but leaves wdir untouched if answering 'yes'.
Bug was set to UNCONFIRMED for 30 days, bumping
Fixed by https://mercurial-scm.org/repo/hg/rev/1f114c797961 Matt Harbison <matt_harbison@yahoo.com> rebase: avoid clobbering wdir() with --dry-run or --confirm (issue6291) See 56d3e0b499df for the source of adding originalwd to the list of things that cause wdir to be updated. That change didn't come with tests, and attempts to recreate the scenario described have thus far failed. Differential Revision: https://phab.mercurial-scm.org/D8489 (please test the fix)
Bug was set to TESTING for 7 days, resolving