OSDN Git Service

Fix "git-merge -s bogo" help text
authorJunio C Hamano <gitster@pobox.com>
Thu, 21 Aug 2008 05:07:55 +0000 (22:07 -0700)
committerJunio C Hamano <gitster@pobox.com>
Thu, 21 Aug 2008 05:57:55 +0000 (22:57 -0700)
It does not make much sense to reuse the output code from "git help" to
show the list of commands to the standard output while giving the error
message before that to the standard error stream.  This makes the output
consistent to that of the 1.6.0 version of "git merge".

Signed-off-by: Junio C Hamano <gitster@pobox.com>
builtin-merge.c

index 1f9389b..3e8db0d 100644 (file)
@@ -110,9 +110,17 @@ static struct strategy *get_strategy(const char *name)
                }
        }
        if (!is_in_cmdlist(&main_cmds, name) && !is_in_cmdlist(&other_cmds, name)) {
-
-               fprintf(stderr, "Could not find merge strategy '%s'.\n\n", name);
-               list_commands("strategies", longest, &main_cmds, &other_cmds);
+               fprintf(stderr, "Could not find merge strategy '%s'.\n", name);
+               fprintf(stderr, "Available strategies are:");
+               for (i = 0; i < main_cmds.cnt; i++)
+                       fprintf(stderr, " %s", main_cmds.names[i]->name);
+               fprintf(stderr, ".\n");
+               if (other_cmds.cnt) {
+                       fprintf(stderr, "Available custom strategies are:");
+                       for (i = 0; i < other_cmds.cnt; i++)
+                               fprintf(stderr, " %s", other_cmds.names[i]->name);
+                       fprintf(stderr, ".\n");
+               }
                exit(1);
        }