479 self.obsoletenotrebased) |
479 self.obsoletenotrebased) |
480 self.storestatus(tr=tr) |
480 self.storestatus(tr=tr) |
481 if len(repo[None].parents()) == 2: |
481 if len(repo[None].parents()) == 2: |
482 repo.ui.debug('resuming interrupted rebase\n') |
482 repo.ui.debug('resuming interrupted rebase\n') |
483 else: |
483 else: |
484 try: |
484 overrides = {('ui', 'forcemerge'): opts.get('tool', '')} |
485 ui.setconfig('ui', 'forcemerge', opts.get('tool', ''), |
485 with ui.configoverride(overrides, 'rebase'): |
486 'rebase') |
|
487 stats = rebasenode(repo, rev, p1, base, self.collapsef, |
486 stats = rebasenode(repo, rev, p1, base, self.collapsef, |
488 dest, wctx=self.wctx) |
487 dest, wctx=self.wctx) |
489 if stats and stats[3] > 0: |
488 if stats and stats[3] > 0: |
490 if self.wctx.isinmemory(): |
489 if self.wctx.isinmemory(): |
491 raise error.InMemoryMergeConflictsError() |
490 raise error.InMemoryMergeConflictsError() |
492 else: |
491 else: |
493 raise error.InterventionRequired( |
492 raise error.InterventionRequired( |
494 _('unresolved conflicts (see hg ' |
493 _('unresolved conflicts (see hg ' |
495 'resolve, then hg rebase --continue)')) |
494 'resolve, then hg rebase --continue)')) |
496 finally: |
|
497 ui.setconfig('ui', 'forcemerge', '', 'rebase') |
|
498 if not self.collapsef: |
495 if not self.collapsef: |
499 merging = p2 != nullrev |
496 merging = p2 != nullrev |
500 editform = cmdutil.mergeeditform(merging, 'rebase') |
497 editform = cmdutil.mergeeditform(merging, 'rebase') |
501 editor = cmdutil.getcommiteditor(editform=editform, |
498 editor = cmdutil.getcommiteditor(editform=editform, |
502 **pycompat.strkwargs(opts)) |
499 **pycompat.strkwargs(opts)) |