Junio C Hamano <gitster@xxxxxxxxx> writes: >> It could be followed up by introducing --cherry as equivalent to >> --cherry-pick --right-only --no-merges. > > Yeah, I think that is a good idea. -- >8 -- Subject: [PATCH] log --cherry: a synonym At the Porcelain level, because by definition there are many more contributors than integrators, it makes sense to give a handy short-hand for --right-only used with --cherry-pick. Make it so. Signed-off-by: Junio C Hamano <gitster@xxxxxxxxx> --- * We would want to add some tests, but I thought at least I owe you the final patch to bring the handy short-hand after this back and forth first, so here it is. Documentation/rev-list-options.txt | 7 +++++++ revision.c | 9 ++++++++- 2 files changed, 15 insertions(+), 1 deletions(-) diff --git a/Documentation/rev-list-options.txt b/Documentation/rev-list-options.txt index cebba62..3068dc3 100644 --- a/Documentation/rev-list-options.txt +++ b/Documentation/rev-list-options.txt @@ -332,6 +332,13 @@ commits from `B` which are in `A` or are patch-equivalent to a commit in More precisely, `--cherry-pick --right-only --no-merges` gives the exact list. +--cherry:: + + A synonym for `--right-only --cherry-pick --no-merges`; useful to + limit the output to the commits on our side that have not been + applied to the other side of a forked history with `git log --cherry + upstream...mybranch`. + -g:: --walk-reflogs:: diff --git a/revision.c b/revision.c index 1fcaeb7..f747526 100644 --- a/revision.c +++ b/revision.c @@ -1285,12 +1285,19 @@ static int handle_revision_opt(struct rev_info *revs, int argc, const char **arg revs->left_right = 1; } else if (!strcmp(arg, "--left-only")) { if (revs->right_only) - die("--left-only is incompatible with --right-only"); + die("--left-only is incompatible with --right-only" + " or --cherry"); revs->left_only = 1; } else if (!strcmp(arg, "--right-only")) { if (revs->left_only) die("--right-only is incompatible with --left-only"); revs->right_only = 1; + } else if (!strcmp(arg, "--cherry")) { + if (revs->left_only) + die("--cherry is incompatible with --left-only"); + revs->cherry_pick = 1; + revs->right_only = 1; + revs->limited = 1; } else if (!strcmp(arg, "--count")) { revs->count = 1; } else if (!strcmp(arg, "--cherry-pick")) { -- 1.7.4.1.107.ga7184 -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html