X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=builtin-rev-list.c;h=893762c80f4910fadf2d6df414bd835cccb7faaa;hb=261044e85ddac3de48dc74dd9c416c95147022ad;hp=83a7b1349e06dbf1a355888272d9b13a7d4c22c4;hpb=dceab837557077f70bf082727645925aec443500;p=git.git diff --git a/builtin-rev-list.c b/builtin-rev-list.c index 83a7b1349..893762c80 100644 --- a/builtin-rev-list.c +++ b/builtin-rev-list.c @@ -17,7 +17,7 @@ #define COUNTED (1u<<16) static const char rev_list_usage[] = -"git-rev-list [OPTION] ... [ -- paths... ]\n" +"git rev-list [OPTION] ... [ -- paths... ]\n" " limiting output:\n" " --max-count=nr\n" " --max-age=epoch\n" @@ -37,6 +37,7 @@ static const char rev_list_usage[] = " --reverse\n" " formatting output:\n" " --parents\n" +" --children\n" " --objects | --objects-edge\n" " --unpacked\n" " --header | --pretty\n" @@ -90,6 +91,15 @@ static void show_commit(struct commit *commit) parents = parents->next; } } + if (revs.children.name) { + struct commit_list *children; + + children = lookup_decoration(&revs.children, &commit->object); + while (children) { + printf(" %s", sha1_to_hex(children->item->object.sha1)); + children = children->next; + } + } show_decorations(commit); if (revs.commit_format == CMIT_FMT_ONELINE) putchar(' '); @@ -565,23 +575,6 @@ static struct commit_list *find_bisection(struct commit_list *list, return best; } -static void read_revisions_from_stdin(struct rev_info *revs) -{ - char line[1000]; - - while (fgets(line, sizeof(line), stdin) != NULL) { - int len = strlen(line); - if (len && line[len - 1] == '\n') - line[--len] = 0; - if (!len) - break; - if (line[0] == '-') - die("options not supported in --stdin mode"); - if (handle_revision_arg(line, revs, 0, 1)) - die("bad revision '%s'", line); - } -} - int cmd_rev_list(int argc, const char **argv, const char *prefix) { struct commit_list *list; @@ -597,6 +590,7 @@ int cmd_rev_list(int argc, const char **argv, const char *prefix) revs.commit_format = CMIT_FMT_UNSPECIFIED; argc = setup_revisions(argc, argv, &revs, NULL); + quiet = DIFF_OPT_TST(&revs.diffopt, QUIET); for (i = 1 ; i < argc; i++) { const char *arg = argv[i]; @@ -628,10 +622,6 @@ int cmd_rev_list(int argc, const char **argv, const char *prefix) read_revisions_from_stdin(&revs); continue; } - if (!strcmp(arg, "--quiet")) { - quiet = 1; - continue; - } usage(rev_list_usage); }