diff options
-rw-r--r-- | builtin/gc.c | 6 | ||||
-rwxr-xr-x | t/t7900-maintenance.sh | 7 |
2 files changed, 10 insertions, 3 deletions
diff --git a/builtin/gc.c b/builtin/gc.c index c4af9b1128..57d7602596 100644 --- a/builtin/gc.c +++ b/builtin/gc.c @@ -1785,8 +1785,10 @@ static int maintenance_run(int argc, const char **argv, const char *prefix, builtin_maintenance_run_usage, PARSE_OPT_STOP_AT_NON_OPTION); - if (opts.auto_flag && opts.schedule) - die(_("use at most one of --auto and --schedule=<frequency>")); + die_for_incompatible_opt2(opts.auto_flag, "--auto", + opts.schedule, "--schedule="); + die_for_incompatible_opt2(selected_tasks.nr, "--task=", + opts.schedule, "--schedule="); gc_config(&cfg); initialize_task_config(&selected_tasks, opts.schedule); diff --git a/t/t7900-maintenance.sh b/t/t7900-maintenance.sh index 8cf89e285f..1ada524660 100755 --- a/t/t7900-maintenance.sh +++ b/t/t7900-maintenance.sh @@ -610,7 +610,12 @@ test_expect_success 'rerere-gc task with --auto honors maintenance.rerere-gc.aut test_expect_success '--auto and --schedule incompatible' ' test_must_fail git maintenance run --auto --schedule=daily 2>err && - test_grep "at most one" err + test_grep "cannot be used together" err +' + +test_expect_success '--task and --schedule incompatible' ' + test_must_fail git maintenance run --task=pack-refs --schedule=daily 2>err && + test_grep "cannot be used together" err ' test_expect_success 'invalid --schedule value' ' |