diff --git a/hgext/rebase.py b/hgext/rebase.py index d767f71b91589335041b570ec60281a3a06ab117_aGdleHQvcmViYXNlLnB5..61c1f29e7f4f26dca94e831d2ba7c3ff81c0faeb_aGdleHQvcmViYXNlLnB5 100644 --- a/hgext/rebase.py +++ b/hgext/rebase.py @@ -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) diff --git a/tests/test-rebase-inmemory.t b/tests/test-rebase-inmemory.t index d767f71b91589335041b570ec60281a3a06ab117_dGVzdHMvdGVzdC1yZWJhc2UtaW5tZW1vcnkudA==..61c1f29e7f4f26dca94e831d2ba7c3ff81c0faeb_dGVzdHMvdGVzdC1yZWJhc2UtaW5tZW1vcnkudA== 100644 --- a/tests/test-rebase-inmemory.t +++ b/tests/test-rebase-inmemory.t @@ -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 ..