examples: print available commands if no args are given

This commit is contained in:
Patrick Steinhardt
2019-01-24 11:48:44 +01:00
parent ead10785dc
commit 106998fce6

View File

@@ -50,6 +50,17 @@ static int run_command(git_command_fn fn, git_repository *repo, struct args_info
return !!error;
}
static int usage(const char *prog)
{
size_t i;
fprintf(stderr, "usage: %s <cmd>...\n\nAvailable commands:\n\n", prog);
for (i = 0; i < ARRAY_SIZE(commands); i++)
fprintf(stderr, "\t%s\n", commands[i].name);
exit(EXIT_FAILURE);
}
int main(int argc, char **argv)
{
struct args_info args = ARGS_INFO_INIT;
@@ -58,10 +69,8 @@ int main(int argc, char **argv)
int return_code = 1;
size_t i;
if (argc < 2) {
fprintf(stderr, "usage: %s <cmd> [repo]\n", argv[0]);
exit(EXIT_FAILURE);
}
if (argc < 2)
usage(argv[0]);
git_libgit2_init();
@@ -79,6 +88,9 @@ int main(int argc, char **argv)
}
}
if (args.pos == args.argc)
usage(argv[0]);
if (!git_dir)
git_dir = ".";