diff --git a/Documentation/git-help.txt b/Documentation/git-help.txt index cf1d53e949..d07590c8ff 100644 --- a/Documentation/git-help.txt +++ b/Documentation/git-help.txt @@ -9,7 +9,7 @@ SYNOPSIS -------- [verse] 'git help' [-a|--all] [--[no-]verbose] - [[-i|--info] [-m|--man] [-w|--web]] [|] +'git help' [[-i|--info] [-m|--man] [-w|--web]] [|] 'git help' [-g|--guides] 'git help' [-c|--config] @@ -46,8 +46,7 @@ OPTIONS ------- -a:: --all:: - Prints all the available commands on the standard output. This - option overrides any given command or guide name. + Prints all the available commands on the standard output. --verbose:: When used with `--all` print description for all recognized diff --git a/builtin/help.c b/builtin/help.c index 1c1581ef85..b682446bbf 100644 --- a/builtin/help.c +++ b/builtin/help.c @@ -75,8 +75,8 @@ static struct option builtin_help_options[] = { }; static const char * const builtin_help_usage[] = { - N_("git help [-a|--all] [--[no-]verbose]]\n" - " [[-i|--info] [-m|--man] [-w|--web]] []"), + N_("git help [-a|--all] [--[no-]verbose]]"), + N_("git help [[-i|--info] [-m|--man] [-w|--web]] []"), N_("git help [-g|--guides]"), N_("git help [-c|--config]"), NULL @@ -594,6 +594,7 @@ int cmd_help(int argc, const char **argv, const char *prefix) switch (cmd_mode) { case HELP_ACTION_ALL: + opt_mode_usage(argc, "--all"); if (verbose) { setup_pager(); list_all_cmds_help(); diff --git a/t/t0012-help.sh b/t/t0012-help.sh index 9ac3f5d3c4..c87730aa92 100755 --- a/t/t0012-help.sh +++ b/t/t0012-help.sh @@ -35,6 +35,9 @@ test_expect_success 'basic help commands' ' ' test_expect_success 'invalid usage' ' + test_expect_code 129 git help -a add && + test_expect_code 129 git help --all add && + test_expect_code 129 git help -g add && test_expect_code 129 git help -a -c &&