git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH v2 6/9] help: correct usage & behavior of "git help --all"

From
Junio C Hamano <gitster@pobox.com>
Date
Feb 23, 2022, 22:12 UTC
Message-ID
<xmqq1qzts04x.fsf@gitster.g>
In-Reply-To
<patch-v2-6.9-868e8a6cf83-20220221T193708Z-avarab@gmail.com>
Ævar Arnfjörð Bjarmason  <avarab@gmail.com> writes:
Show 10 quoted lines
> diff --git a/Documentation/git-help.txt b/Documentation/git-help.txt
> index cf1d53e9499..d07590c8ff7 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]] [<command>|<guide>]
> +'git help' [[-i|--info] [-m|--man] [-w|--web]] [<command>|<guide>]

Hmph, OK. The earlier one made it appear that when -a is given to "git help" it would also accept command or guide, which is no longer true.

>  'git help' [-g|--guides]
>  'git help' [-c|--config]

This is not new, but don't we need to fix the mark-up of [-a|--all] and [-g|--guides] and [-c|--config]? It's not like "We can give 0 or more of i/-m/-w". These are "we have to give either -a or --all to trigger this mode".

Show 20 quoted lines
> diff --git a/builtin/help.c b/builtin/help.c
> index 1c1581ef850..b682446bbf5 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]] [<command>]"),
> +	N_("git help [-a|--all] [--[no-]verbose]]"),
> +	N_("git help [[-i|--info] [-m|--man] [-w|--web]] [<command>]"),
>  	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");
OK.
Show 16 quoted lines
>  		if (verbose) {
>  			setup_pager();
>  			list_all_cmds_help();
> diff --git a/t/t0012-help.sh b/t/t0012-help.sh
> index 9ac3f5d3c4b..c87730aa920 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 &&
Previous: Ævar Arnfjörð BjarmasonNext: Ævar Arnfjörð Bjarmason
Message 19 of 29 in “help: test and fix small "help -g" regression”
  1. 0/7 help: test and fix small "help -g" regressionÆvar Arnfjörð Bjarmason, Dec 28, 2021
  2. 1/7 help doc: add missing "]" to "[-a|--all]"Ævar Arnfjörð Bjarmason, Dec 28, 2021
  3. 2/7 help.c: use puts() instead of printf{,_ln}() for consistencyÆvar Arnfjörð Bjarmason, Dec 28, 2021
  4. 3/7 help tests: test "git" and "git help [-a|-g] spacingÆvar Arnfjörð Bjarmason, Dec 28, 2021
  5. 4/7 help.c: split up list_all_cmds_help() functionÆvar Arnfjörð Bjarmason, Dec 28, 2021
  6. 5/7 help: error if [-a|-g|-c] and [-i|-m|-w] are combinedÆvar Arnfjörð Bjarmason, Dec 28, 2021
  7. Eric SunshineDec 28, 2021
  8. Ævar Arnfjörð BjarmasonDec 29, 2021
  9. 6/7 help: add --no-[external-commands|aliases] for use with --allÆvar Arnfjörð Bjarmason, Dec 28, 2021
  10. Eric SunshineDec 28, 2021
  11. 7/7 help: don't print "\n" before single-section outputÆvar Arnfjörð Bjarmason, Dec 28, 2021
  12. 0/9 help: tests, parse_options() sanity, fix "help -g" regressionÆvar Arnfjörð Bjarmason, Feb 21, 2022
  13. 1/9 help doc: add missing "]" to "[-a|--all]"Ævar Arnfjörð Bjarmason, Feb 21, 2022
  14. 2/9 help.c: use puts() instead of printf{,_ln}() for consistencyÆvar Arnfjörð Bjarmason, Feb 21, 2022
  15. Junio C HamanoFeb 23, 2022
  16. Ævar Arnfjörð BjarmasonFeb 23, 2022
  17. 3/9 help tests: test "git" and "git help [-a|-g] spacingÆvar Arnfjörð Bjarmason, Feb 21, 2022
  18. 6/9 help: correct usage & behavior of "git help --all"Ævar Arnfjörð Bjarmason, Feb 21, 2022
  19. Junio C HamanoFeb 23, 2022
  20. 4/9 help.c: split up list_all_cmds_help() functionÆvar Arnfjörð Bjarmason, Feb 21, 2022
  21. Junio C HamanoFeb 23, 2022
  22. 7/9 help: error if [-a|-g|-c] and [-i|-m|-w] are combinedÆvar Arnfjörð Bjarmason, Feb 21, 2022
  23. Junio C HamanoFeb 23, 2022
  24. 9/9 help: don't print "\n" before single-section outputÆvar Arnfjörð Bjarmason, Feb 21, 2022
  25. Junio C HamanoFeb 23, 2022
  26. 8/9 help: add --no-[external-commands|aliases] for use with --allÆvar Arnfjörð Bjarmason, Feb 21, 2022
  27. Junio C HamanoFeb 23, 2022
  28. 5/9 help: note the option name on option incompatibilityÆvar Arnfjörð Bjarmason, Feb 21, 2022
  29. Junio C HamanoFeb 23, 2022

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.