D7826: rebase: stop relying on having two parents to resume rebase
martinvonz (Martin von Zweigbergk)
phabricator at mercurial-scm.org
Thu Jan 16 03:18:54 EST 2020
martinvonz updated this revision to Diff 19344.
REPOSITORY
rHG Mercurial
CHANGES SINCE LAST UPDATE
https://phab.mercurial-scm.org/D7826?vs=19146&id=19344
BRANCH
default
CHANGES SINCE LAST ACTION
https://phab.mercurial-scm.org/D7826/new/
REVISION DETAIL
https://phab.mercurial-scm.org/D7826
AFFECTED FILES
hgext/rebase.py
CHANGE DETAILS
diff --git a/hgext/rebase.py b/hgext/rebase.py
--- a/hgext/rebase.py
+++ b/hgext/rebase.py
@@ -177,6 +177,7 @@
# --continue or --abort)), the original repo should be used so
# visibility-dependent revsets are correct.
self.prepared = False
+ self.resume = False
self._repo = repo
self.ui = ui
@@ -366,6 +367,7 @@
_checkobsrebase(self.repo, self.ui, obsoleteset, skippedset)
def _prepareabortorcontinue(self, isabort, backup=True, suppwarns=False):
+ self.resume = True
try:
self.restorestatus()
self.collapsemsg = restorecollapsemsg(self.repo, isabort)
@@ -605,8 +607,9 @@
self.skipped,
self.obsoletenotrebased,
)
- if not self.inmemory and len(repo[None].parents()) == 2:
+ if self.resume and self.wctx.p1().rev() == p1:
repo.ui.debug(b'resuming interrupted rebase\n')
+ self.resume = False
else:
overrides = {(b'ui', b'forcemerge'): opts.get(b'tool', b'')}
with ui.configoverride(overrides, b'rebase'):
To: martinvonz, #hg-reviewers
Cc: mercurial-devel
More information about the Mercurial-devel
mailing list