diff options
-rw-r--r-- | Documentation/git-show-branch.txt | 4 | ||||
-rw-r--r-- | show-branch.c | 8 |
2 files changed, 7 insertions, 5 deletions
diff --git a/Documentation/git-show-branch.txt b/Documentation/git-show-branch.txt index c947fcedae..cc7da30873 100644 --- a/Documentation/git-show-branch.txt +++ b/Documentation/git-show-branch.txt @@ -33,8 +33,8 @@ OPTIONS --merge-base:: Instead of showing the commit list, just act like the - 'git-merge-base' command except that it can accept more - than two heads. + 'git-merge-base -a' command, except that it can accept + more than two heads. OUTPUT diff --git a/show-branch.c b/show-branch.c index 8b37aebb01..ccb0c73bf9 100644 --- a/show-branch.c +++ b/show-branch.c @@ -4,7 +4,7 @@ #include "refs.h" static const char show_branch_usage[] = -"git-show-branch [--all] [--heads] [--tags] [--more=count] [<refs>...]"; +"git-show-branch [--all] [--heads] [--tags] [--more=count] [--merge-base] [<refs>...]"; #define UNINTERESTING 01 @@ -291,6 +291,7 @@ static int show_merge_base(struct commit_list *seen, int num_rev) { int all_mask = ((1u << (REV_SHIFT + num_rev)) - 1); int all_revs = all_mask & ~((1u << REV_SHIFT) - 1); + int exit_status = 1; while (seen) { struct commit *commit = pop_one_commit(&seen); @@ -298,10 +299,11 @@ static int show_merge_base(struct commit_list *seen, int num_rev) if (!(flags & UNINTERESTING) && ((flags & all_revs) == all_revs)) { puts(sha1_to_hex(commit->object.sha1)); - return 0; + exit_status = 0; + commit->object.flags |= UNINTERESTING; } } - return 1; + return exit_status; } int main(int ac, char **av) |