Mercurial > hg
changeset 46010:61c1f29e7f4f
rebase: clear merge state when aborting in-memory merge on dirty working copy
Differential Revision: https://phab.mercurial-scm.org/D9509
author | Martin von Zweigbergk <martinvonz@google.com> |
---|---|
date | Wed, 02 Dec 2020 15:39:01 -0800 |
parents | d767f71b9158 |
children | b9588ff9b66a |
files | hgext/rebase.py tests/test-rebase-inmemory.t |
diffstat | 2 files changed, 6 insertions(+), 7 deletions(-) [+] |
line wrap: on
line diff
--- a/hgext/rebase.py Wed Dec 02 15:15:16 2020 -0800 +++ b/hgext/rebase.py Wed Dec 02 15:39:01 2020 -0800 @@ -642,7 +642,12 @@ b"commit again in the working copy\n" ) ) - cmdutil.bailifchanged(repo) + try: + cmdutil.bailifchanged(repo) + except error.Abort: + clearstatus(repo) + clearcollapsemsg(repo) + raise self.inmemory = False self._assignworkingcopy() mergemod.update(repo[p1], wc=self.wctx)
--- a/tests/test-rebase-inmemory.t Wed Dec 02 15:15:16 2020 -0800 +++ b/tests/test-rebase-inmemory.t Wed Dec 02 15:39:01 2020 -0800 @@ -489,12 +489,6 @@ dirty $ hg status -v M a - # The repository is in an unfinished *rebase* state. - - # To continue: hg rebase --continue - # To abort: hg rebase --abort - # To stop: hg rebase --stop - Retrying without in-memory merge won't lose merge state $ cd ..