summaryrefslogtreecommitdiff
path: root/builtin/help.c
diff options
context:
space:
mode:
authorPhilip Oakley <philipoakley@iee.org>2013-04-02 22:39:49 (GMT)
committerJunio C Hamano <gitster@pobox.com>2013-04-03 00:58:24 (GMT)
commit15f7d4943807a50e01d2fd85bcdbd44361808dd2 (patch)
treec2d05f3a7eeced6d22074074f209ccbdc7424678 /builtin/help.c
parent961c5129d53554d4d71003899fab8dda846d7c2a (diff)
downloadgit-15f7d4943807a50e01d2fd85bcdbd44361808dd2.zip
git-15f7d4943807a50e01d2fd85bcdbd44361808dd2.tar.gz
git-15f7d4943807a50e01d2fd85bcdbd44361808dd2.tar.bz2
builtin/help.c: split "-a" processing into two
"help -a" (help all) gives the list of available commands and then further gives hints on the use of "git help". Separate these into two steps, because we will add "help -g" (help guides) that want to also show the overall hints after it is done. While at it, change the definition of the "-a" option to use OPT_BOOL, not the deprecated OPT_BOOLEAN. We do not behave differently when the user gives the "-a" option multiple times, e.g. "git help -a -a". Signed-off-by: Philip Oakley <philipoakley@iee.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'builtin/help.c')
-rw-r--r--builtin/help.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/builtin/help.c b/builtin/help.c
index d1d7181..8969d3b 100644
--- a/builtin/help.c
+++ b/builtin/help.c
@@ -39,7 +39,7 @@ static int show_all = 0;
static unsigned int colopts;
static enum help_format help_format = HELP_FORMAT_NONE;
static struct option builtin_help_options[] = {
- OPT_BOOLEAN('a', "all", &show_all, N_("print all available commands")),
+ OPT_BOOL('a', "all", &show_all, N_("print all available commands")),
OPT_SET_INT('m', "man", &help_format, N_("show man page"), HELP_FORMAT_MAN),
OPT_SET_INT('w', "web", &help_format, N_("show manual in web browser"),
HELP_FORMAT_WEB),
@@ -428,7 +428,13 @@ int cmd_help(int argc, const char **argv, const char *prefix)
git_config(git_help_config, NULL);
printf(_("usage: %s%s"), _(git_usage_string), "\n\n");
list_commands(colopts, &main_cmds, &other_cmds);
+ }
+
+ if (show_all) {
printf("%s\n", _(git_more_info_string));
+ /*
+ * We're done. Ignore any remaining args
+ */
return 0;
}