comparison hgext/rebase.py @ 36930:36de8a3c429c

rebase: use configoverride context manager for ui.forcemerge Differential Revision: https://phab.mercurial-scm.org/D2761
author Martin von Zweigbergk <martinvonz@google.com>
date Fri, 09 Mar 2018 12:48:00 -0800
parents cc2bfc7d5362
children 28f988093911
comparison
equal deleted inserted replaced
36929:cc2bfc7d5362 36930:36de8a3c429c
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))