Mercurial > public > mercurial-scm > hg
comparison mercurial/commands.py @ 50838:b4425b5bd80e
merge: migrate `opts` to native kwargs
author | Matt Harbison <matt_harbison@yahoo.com> |
---|---|
date | Sun, 20 Aug 2023 01:32:22 -0400 |
parents | 2c78ebaf4c2a |
children | 55a9ea786291 |
comparison
equal
deleted
inserted
replaced
50837:2c78ebaf4c2a | 50838:b4425b5bd80e |
---|---|
4912 all changes. | 4912 all changes. |
4913 | 4913 |
4914 Returns 0 on success, 1 if there are unresolved files. | 4914 Returns 0 on success, 1 if there are unresolved files. |
4915 """ | 4915 """ |
4916 | 4916 |
4917 opts = pycompat.byteskwargs(opts) | 4917 abort = opts.get('abort') |
4918 abort = opts.get(b'abort') | |
4919 if abort and repo.dirstate.p2() == repo.nullid: | 4918 if abort and repo.dirstate.p2() == repo.nullid: |
4920 cmdutil.wrongtooltocontinue(repo, _(b'merge')) | 4919 cmdutil.wrongtooltocontinue(repo, _(b'merge')) |
4921 cmdutil.check_incompatible_arguments(opts, b'abort', [b'rev', b'preview']) | 4920 cmdutil.check_incompatible_arguments(opts, 'abort', ['rev', 'preview']) |
4922 if abort: | 4921 if abort: |
4923 state = cmdutil.getunfinishedstate(repo) | 4922 state = cmdutil.getunfinishedstate(repo) |
4924 if state and state._opname != b'merge': | 4923 if state and state._opname != b'merge': |
4925 raise error.StateError( | 4924 raise error.StateError( |
4926 _(b'cannot abort merge with %s in progress') % (state._opname), | 4925 _(b'cannot abort merge with %s in progress') % (state._opname), |
4928 ) | 4927 ) |
4929 if node: | 4928 if node: |
4930 raise error.InputError(_(b"cannot specify a node with --abort")) | 4929 raise error.InputError(_(b"cannot specify a node with --abort")) |
4931 return hg.abortmerge(repo.ui, repo) | 4930 return hg.abortmerge(repo.ui, repo) |
4932 | 4931 |
4933 if opts.get(b'rev') and node: | 4932 if opts.get('rev') and node: |
4934 raise error.InputError(_(b"please specify just one revision")) | 4933 raise error.InputError(_(b"please specify just one revision")) |
4935 if not node: | 4934 if not node: |
4936 node = opts.get(b'rev') | 4935 node = opts.get('rev') |
4937 | 4936 |
4938 if node: | 4937 if node: |
4939 ctx = logcmdutil.revsingle(repo, node) | 4938 ctx = logcmdutil.revsingle(repo, node) |
4940 else: | 4939 else: |
4941 if ui.configbool(b'commands', b'merge.require-rev'): | 4940 if ui.configbool(b'commands', b'merge.require-rev'): |
4950 if ctx.node() is None: | 4949 if ctx.node() is None: |
4951 raise error.InputError( | 4950 raise error.InputError( |
4952 _(b'merging with the working copy has no effect') | 4951 _(b'merging with the working copy has no effect') |
4953 ) | 4952 ) |
4954 | 4953 |
4955 if opts.get(b'preview'): | 4954 if opts.get('preview'): |
4956 # find nodes that are ancestors of p2 but not of p1 | 4955 # find nodes that are ancestors of p2 but not of p1 |
4957 p1 = repo[b'.'].node() | 4956 p1 = repo[b'.'].node() |
4958 p2 = ctx.node() | 4957 p2 = ctx.node() |
4959 nodes = repo.changelog.findmissing(common=[p1], heads=[p2]) | 4958 nodes = repo.changelog.findmissing(common=[p1], heads=[p2]) |
4960 | 4959 |
4961 displayer = logcmdutil.changesetdisplayer(ui, repo, opts) | 4960 displayer = logcmdutil.changesetdisplayer( |
4961 ui, repo, pycompat.byteskwargs(opts) | |
4962 ) | |
4962 for node in nodes: | 4963 for node in nodes: |
4963 displayer.show(repo[node]) | 4964 displayer.show(repo[node]) |
4964 displayer.close() | 4965 displayer.close() |
4965 return 0 | 4966 return 0 |
4966 | 4967 |
4967 # ui.forcemerge is an internal variable, do not document | 4968 # ui.forcemerge is an internal variable, do not document |
4968 overrides = {(b'ui', b'forcemerge'): opts.get(b'tool', b'')} | 4969 overrides = {(b'ui', b'forcemerge'): opts.get('tool', b'')} |
4969 with ui.configoverride(overrides, b'merge'): | 4970 with ui.configoverride(overrides, b'merge'): |
4970 force = opts.get(b'force') | 4971 force = opts.get('force') |
4971 labels = [b'working copy', b'merge rev', b'common ancestor'] | 4972 labels = [b'working copy', b'merge rev', b'common ancestor'] |
4972 return hg.merge(ctx, force=force, labels=labels) | 4973 return hg.merge(ctx, force=force, labels=labels) |
4973 | 4974 |
4974 | 4975 |
4975 statemod.addunfinished( | 4976 statemod.addunfinished( |