Allow "remove" command without explicit --name option.

This commit is contained in:
Michael Haggerty 2013-05-04 05:52:05 +02:00
parent aa70e40b0c
commit 84d5851769

View File

@ -1586,12 +1586,16 @@ def incorporate_user_merge(merge_state):
return merge_frontier.add_success(i1, i2)
def read_merge_state(name=None):
def choose_merge_name(name=None):
if name is None:
name = MergeState.get_default_name()
if not name:
raise Failure('Please specify the name of the merge to autofill')
return MergeState.read(name)
return name
def read_merge_state(name=None):
return MergeState.read(choose_merge_name(name))
@Failure.wrap
@ -1640,7 +1644,7 @@ def main(args):
)
parser_remove.add_argument(
'--name', action='store', default=None,
help='name to use for this incremental merge',
help='name of incremental merge to remove',
)
parser_list = subparsers.add_parser(
@ -1702,9 +1706,7 @@ def main(args):
MergeState.start(options.name, options.goal, 'HEAD', options.branch)
MergeState.set_default_name(options.name)
elif options.subcommand == 'remove':
if options.name is None:
parser.error('The "remove" command requires an option --name=NAME')
MergeState.remove(options.name)
MergeState.remove(choose_merge_name(options.name))
elif options.subcommand == 'continue':
merge_state = read_merge_state(options.name)
try: