All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jonathan Nieder <jrnieder@gmail.com>
To: Michael J Gruber <git@drmicha.warpmail.net>
Cc: git@vger.kernel.org, Junio C Hamano <gitster@pobox.com>,
	Jeff King <peff@peff.net>
Subject: Re: [PATCHv2 3/3] rev-list --min-parents,--max-parents: doc and test and completion
Date: Mon, 21 Mar 2011 13:45:14 -0500	[thread overview]
Message-ID: <20110321184514.GA1850@elie> (raw)
In-Reply-To: <8bad49d4e4897be623b7af3096498a5803dbbd89.1300702130.git.git@drmicha.warpmail.net>

Michael J Gruber wrote:

> Based on mg/rev-list-one-side-only (in next) to save Junio a build conflict
> resolution.

Not a serious problem, but I wish it hadn't been.  What particular
functionality from that branch does this use?

Ah, now that I check it seems that that is to change a use of
no_merges in the implementation of --cherry to use the new API?  Makes
sense (and good catch).  With that hunk skipped, the patches apply to
master.

> --- a/Documentation/rev-list-options.txt
> +++ b/Documentation/rev-list-options.txt
> @@ -72,11 +72,24 @@ endif::git-rev-list[]
>  
>  --merges::
>  
> -	Print only merge commits.
> +	Print only merge commits. This is equivalent to `--min-parents=2`.
>  
>  --no-merges::
>  
> -	Do not print commits with more than one parent.
> +	Do not print commits with more than one parent. This is
> +	equivalent to `--max-parents=1`.
> +
> +--min-parents::
> +--max-parents::
> +
> +	Show only commits which have at least resp. at most that many

ENOPARSE.  I guess parentheses around "resp. at most" would work as
a minimal fix, but it might be better to say:

 --min-parents=<n>::
	Show only commits which have at least <n> parents.

 --max-parents=<n>::
	Show only commits which have at least <n> parents.

and perhaps to put

 git log --max-parents=0::
	Lists all root commits.

 git log --min-parents=3::
	Lists all octopus merges.

under EXAMPLES.

> +	commits, where negative parameters for `--max-parents=` denote
> +	infinity (i.e. no upper	limit).

Seems hackish.  Maybe --no-max-parents could denote infinity?

> ++
> +In particular, `--max-parents=1` is `--no-merges`, `--min-parents=2` is
> +`--merges` (only), `--max-parents=0` gives all root commits and
> +`--min-parents=3` all octopuses.
> +
>  
>  --first-parent::

It seems there is an extra newline here.

> --- a/t/t6009-rev-list-parent.sh
> +++ b/t/t6009-rev-list-parent.sh
> @@ -1,9 +1,17 @@
>  #!/bin/sh
>  
> -test_description='properly cull all ancestors'
> +test_description='ancestor culling and limiting by parent number'
>  
>  . ./test-lib.sh
>  
> +check_revlist () {
> +	rev_list_args="$1" &&
> +	shift &&
> +	git rev-parse "$@" >expect &&
> +	git rev-list $rev_list_args --all >actual &&
> +	test_cmp expect actual
> +}
> + 

"git am" warns about trailing whitespace on the line after the closing
brace (nothing that --whitespace=fix can't fix, though).

Thanks for factoring this out btw.  It makes the tests themselves
very easy to read.

> +test_expect_success 'rev-list override and infinities' '
> +
> +	check_revlist "--min-parents=2 --max-parents=1 --max-parents=3" tripus normalmerge &&
> +	check_revlist "--min-parents=1 --min-parents=2 --max-parents=7" tetrapus tripus normalmerge &&
> +	check_revlist "--min-parents=2 --max-parents=8" tetrapus tripus normalmerge &&
> +	check_revlist "--min-parents=2 --max-parents=-1" tetrapus tripus normalmerge
> +'

7 and 8 don't mean infinity any more, do they?  What is this test
checking?

  reply	other threads:[~2011-03-21 18:45 UTC|newest]

Thread overview: 67+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-03-17 11:33 [PATCH/RFD 0/2] revision.c: --merges, --no-merges and --merges-only Michael J Gruber
2011-03-17 11:33 ` [PATCH/RFD 1/2] revision.c: rename --merges to --merges-only Michael J Gruber
2011-03-17 11:33 ` [PATCH/RFD 2/2] revision.c: introduce --merges to undo --no-merges Michael J Gruber
2011-03-17 19:23 ` [PATCH/RFD 0/2] revision.c: --merges, --no-merges and --merges-only Junio C Hamano
2011-03-17 19:59 ` Jeff King
2011-03-18  7:56   ` Michael J Gruber
2011-03-18  8:22     ` Junio C Hamano
2011-03-18  8:41       ` Michael J Gruber
2011-03-18  8:56       ` Jeff King
2011-03-18 14:50         ` [PATCH 0/3] rev-list and friends: --min-parents, --max-parents Michael J Gruber
2011-03-18 14:50           ` [PATCH 1/3] revision.c: introduce --min-parents and --max-parents Michael J Gruber
2011-03-18 19:34             ` Jeff King
2011-03-21  7:31               ` Michael J Gruber
2011-03-18 20:48             ` Jonathan Nieder
2011-03-18 21:21               ` Junio C Hamano
2011-03-21  9:26               ` Michael J Gruber
2011-03-18 14:50           ` [PATCH 2/3] t6009: use test_commit() from test-lib.sh Michael J Gruber
2011-03-18 14:50           ` [PATCH 3/3] rev-list --min-parents,--max-parents: doc and test and completion Michael J Gruber
2011-03-18 19:48             ` Jeff King
2011-03-21  9:01               ` Michael J Gruber
2011-03-21 10:54                 ` Jeff King
2011-03-21 12:06                   ` Michael J Gruber
2011-03-21 14:54                     ` Junio C Hamano
2011-03-21 14:56                       ` Michael J Gruber
2011-03-21 16:47                         ` Junio C Hamano
2011-03-18 21:14             ` Jonathan Nieder
2011-03-21  8:52               ` Michael J Gruber
2011-03-21 17:49                 ` Jonathan Nieder
2011-03-22  7:38                   ` Michael J Gruber
2011-03-18 14:54           ` [PATCH 0/3] rev-list and friends: --min-parents, --max-parents Michael J Gruber
2011-03-18 19:41           ` Jeff King
2011-03-21  7:42             ` Michael J Gruber
2011-03-21 10:14               ` [PATCHv2 " Michael J Gruber
2011-03-21 10:14                 ` [PATCHv2 1/3] t6009: use test_commit() from test-lib.sh Michael J Gruber
2011-03-21 10:14                 ` [PATCHv2 2/3] revision.c: introduce --min-parents and --max-parents Michael J Gruber
2011-03-21 14:04                   ` Michael J Gruber
2011-03-21 17:45                   ` Junio C Hamano
2011-03-21 17:58                   ` Jonathan Nieder
2011-03-21 10:14                 ` [PATCHv2 3/3] rev-list --min-parents,--max-parents: doc and test and completion Michael J Gruber
2011-03-21 18:45                   ` Jonathan Nieder [this message]
2011-03-22  7:55                     ` Michael J Gruber
2011-03-23  0:47                       ` Jonathan Nieder
2011-03-21 10:56                 ` [PATCHv2 0/3] rev-list and friends: --min-parents, --max-parents Jeff King
2011-03-23  9:38                   ` [PATCHv3 0/5]rev-list " Michael J Gruber
2011-03-23  9:38                     ` [PATCHv3 1/5] t6009: use test_commit() from test-lib.sh Michael J Gruber
2011-03-23  9:38                     ` [PATCHv3 2/5] revision.c: introduce --min-parents and --max-parents Michael J Gruber
2011-03-23  9:38                     ` [PATCHv3 3/5] squash! " Michael J Gruber
2011-03-23  9:38                     ` [PATCHv3 4/5] rev-list --min-parents,--max-parents: doc, test and completion Michael J Gruber
2011-03-23  9:38                     ` [PATCHv3 5/5] fixup! " Michael J Gruber
2011-03-23 14:48                     ` [PATCHv3 0/5]rev-list and friends: --min-parents, --max-parents Jeff King
2011-03-23 17:12                       ` Junio C Hamano
2011-03-23 18:06                     ` Junio C Hamano
2011-03-24  8:21                     ` Jonathan Nieder
2011-03-24  8:55                       ` Michael J Gruber
2011-03-24  9:42                         ` Jonathan Nieder
2011-08-08  1:13                       ` [PATCH/RFC 0/2] test_when_finished and returning early Jonathan Nieder
2011-08-08  1:15                         ` [PATCH 1/2] test: simplify return value of test_run_ Jonathan Nieder
2011-08-08  1:17                         ` [PATCH 2/2] test: cope better with use of return for errors Jonathan Nieder
2011-08-09  8:46                           ` Johannes Sixt
2011-08-09 15:36                             ` Jeff King
2011-08-11  7:05                               ` [PATCH v2] t3900: do not reference numbered arguments from the test script Johannes Sixt
2011-08-11  7:11                                 ` Jonathan Nieder
2011-08-11 21:49                                   ` Junio C Hamano
2011-08-08  1:26                         ` [PATCH/RFC 0/2] test_when_finished and returning early Jeff King
2011-03-18  9:07     ` [PATCH/RFD 0/2] revision.c: --merges, --no-merges and --merges-only Jeff King
2011-03-18  9:42       ` Michael J Gruber
2011-03-18  9:54         ` Jeff King

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20110321184514.GA1850@elie \
    --to=jrnieder@gmail.com \
    --cc=git@drmicha.warpmail.net \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --cc=peff@peff.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.