Mercurial > public > mercurial-scm > hg-stable
comparison mercurial/commands.py @ 12810:a68ccfd9c7be stable
backout: add --tool argument for specifying merge tool
author | Steve Borho <steve@borho.org> |
---|---|
date | Fri, 22 Oct 2010 11:58:43 -0500 |
parents | e5922564ab01 |
children | 165079e564f0 |
comparison
equal
deleted
inserted
replaced
12809:e5922564ab01 | 12810:a68ccfd9c7be |
---|---|
276 revert_opts['all'] = True | 276 revert_opts['all'] = True |
277 revert_opts['rev'] = hex(parent) | 277 revert_opts['rev'] = hex(parent) |
278 revert_opts['no_backup'] = None | 278 revert_opts['no_backup'] = None |
279 revert(ui, repo, **revert_opts) | 279 revert(ui, repo, **revert_opts) |
280 if not opts.get('merge') and op1 != node: | 280 if not opts.get('merge') and op1 != node: |
281 return hg.update(repo, op1) | 281 try: |
282 ui.setconfig('ui', 'forcemerge', opts.get('tool', '')) | |
283 return hg.update(repo, op1) | |
284 finally: | |
285 ui.setconfig('ui', 'forcemerge', '') | |
282 | 286 |
283 commit_opts = opts.copy() | 287 commit_opts = opts.copy() |
284 commit_opts['addremove'] = False | 288 commit_opts['addremove'] = False |
285 if not commit_opts['message'] and not commit_opts['logfile']: | 289 if not commit_opts['message'] and not commit_opts['logfile']: |
286 # we don't translate commit messages | 290 # we don't translate commit messages |
293 (nice(repo.changelog.tip()), nice(node))) | 297 (nice(repo.changelog.tip()), nice(node))) |
294 if opts.get('merge') and op1 != node: | 298 if opts.get('merge') and op1 != node: |
295 hg.clean(repo, op1, show_stats=False) | 299 hg.clean(repo, op1, show_stats=False) |
296 ui.status(_('merging with changeset %s\n') | 300 ui.status(_('merging with changeset %s\n') |
297 % nice(repo.changelog.tip())) | 301 % nice(repo.changelog.tip())) |
298 return hg.merge(repo, hex(repo.changelog.tip())) | 302 try: |
303 ui.setconfig('ui', 'forcemerge', opts.get('tool', '')) | |
304 return hg.merge(repo, hex(repo.changelog.tip())) | |
305 finally: | |
306 ui.setconfig('ui', 'forcemerge', '') | |
299 return 0 | 307 return 0 |
300 | 308 |
301 def bisect(ui, repo, rev=None, extra=None, command=None, | 309 def bisect(ui, repo, rev=None, extra=None, command=None, |
302 reset=None, good=None, bad=None, skip=None, noupdate=None): | 310 reset=None, good=None, bad=None, skip=None, noupdate=None): |
303 """subdivision search of changesets | 311 """subdivision search of changesets |
4003 (backout, | 4011 (backout, |
4004 [('', 'merge', None, | 4012 [('', 'merge', None, |
4005 _('merge with old dirstate parent after backout')), | 4013 _('merge with old dirstate parent after backout')), |
4006 ('', 'parent', '', | 4014 ('', 'parent', '', |
4007 _('parent to choose when backing out merge'), _('REV')), | 4015 _('parent to choose when backing out merge'), _('REV')), |
4016 ('t', 'tool', '', | |
4017 _('specify merge tool')), | |
4008 ('r', 'rev', '', | 4018 ('r', 'rev', '', |
4009 _('revision to backout'), _('REV')), | 4019 _('revision to backout'), _('REV')), |
4010 ] + walkopts + commitopts + commitopts2, | 4020 ] + walkopts + commitopts + commitopts2, |
4011 _('[OPTION]... [-r] REV')), | 4021 _('[OPTION]... [-r] REV')), |
4012 "bisect": | 4022 "bisect": |