D3742: backout: use context manager for config override
martinvonz (Martin von Zweigbergk)
phabricator at mercurial-scm.org
Fri Jun 15 08:49:23 EDT 2018
This revision was automatically updated to reflect the committed changes.
Closed by commit rHG0d6d0aa3c4bf: backout: use context manager for config override (authored by martinvonz, committed by ).
REPOSITORY
rHG Mercurial
CHANGES SINCE LAST UPDATE
https://phab.mercurial-scm.org/D3742?vs=9071&id=9086
REVISION DETAIL
https://phab.mercurial-scm.org/D3742
AFFECTED FILES
mercurial/commands.py
CHANGE DETAILS
diff --git a/mercurial/commands.py b/mercurial/commands.py
--- a/mercurial/commands.py
+++ b/mercurial/commands.py
@@ -619,18 +619,17 @@
if not opts.get('merge') and op1 != node:
dsguard = dirstateguard.dirstateguard(repo, 'backout')
try:
- ui.setconfig('ui', 'forcemerge', opts.get('tool', ''),
- 'backout')
- stats = mergemod.update(repo, parent, True, True, node, False)
+ overrides = {('ui', 'forcemerge'): opts.get('tool', '')}
+ with ui.configoverride(overrides, 'backout'):
+ stats = mergemod.update(repo, parent, True, True, node, False)
repo.setparents(op1, op2)
dsguard.close()
hg._showstats(repo, stats)
if stats.unresolvedcount:
repo.ui.status(_("use 'hg resolve' to retry unresolved "
"file merges\n"))
return 1
finally:
- ui.setconfig('ui', 'forcemerge', '', '')
lockmod.release(dsguard)
else:
hg.clean(repo, node, show_stats=False)
@@ -667,12 +666,9 @@
hg.clean(repo, op1, show_stats=False)
ui.status(_('merging with changeset %s\n')
% nice(repo.changelog.tip()))
- try:
- ui.setconfig('ui', 'forcemerge', opts.get('tool', ''),
- 'backout')
+ overrides = {('ui', 'forcemerge'): opts.get('tool', '')}
+ with ui.configoverride(overrides, 'backout'):
return hg.merge(repo, hex(repo.changelog.tip()))
- finally:
- ui.setconfig('ui', 'forcemerge', '', '')
return 0
@command('bisect',
To: martinvonz, #hg-reviewers
Cc: mercurial-devel
More information about the Mercurial-devel
mailing list