Merge branch 'jc/show-usage-help'

The help text from "git $cmd -h" appear on the standard output for
some $cmd and the standard error for others.  The built-in commands
have been fixed to show them on the standard output consistently.

* jc/show-usage-help:
  builtin: send usage() help text to standard output
  oddballs: send usage() help text to standard output
  builtins: send usage_with_options() help text to standard output
  usage: add show_usage_if_asked()
  parse-options: add show_usage_with_options_if_asked()
  t0012: optionally check that "-h" output goes to stdout
This commit is contained in:
Junio C Hamano
2025-01-28 13:02:22 -08:00
41 changed files with 121 additions and 64 deletions

View File

@@ -1319,6 +1319,16 @@ void NORETURN usage_with_options(const char * const *usagestr,
exit(129);
}
void show_usage_with_options_if_asked(int ac, const char **av,
const char * const *usagestr,
const struct option *opts)
{
if (ac == 2 && !strcmp(av[1], "-h")) {
usage_with_options_internal(NULL, usagestr, opts, 0, 0);
exit(129);
}
}
void NORETURN usage_msg_opt(const char *msg,
const char * const *usagestr,
const struct option *options)