Re: [PATCH 0/2] [RFD] Using gitrevisions :/search style with other operators
- From
Jeff King <peff@peff.net>
- Date
- Dec 10, 2010, 21:30 UTC
- Message-ID
- <20101210213017.GA14256@sigill.intra.peff.net>
- In-Reply-To
- <66D6F30D-4707-4057-BB46-57B2DF01F479@sb.org>
On Fri, Dec 10, 2010 at 01:21:15PM -0800, Kevin Ballard wrote:
Show 15 quoted lines
> On Dec 10, 2010, at 11:03 AM, Jonathan Nieder wrote:
>
> > - What is the intended use for this family of modifiers? I sort
> > of understand ^{:i/... } for people that forget what case they
> > have used, but why the :nth and others?
>
> In my particular case, I was glancing through the logs, and I wanted to grab
> the second branch that someone else had made that was merged into pu. I would
> have loved to be able to run something like
>
> git merge origin/pu^{:nth(2)/nd/}
>
> While we're speaking of modifiers, could we use one that says "only search
> the first parent hierarchy", e.g. something equivalent to git log's --first-parent
> flag?As neat as this modifier syntax is getting, are we perhaps just recreating the wheel?
How about:
git merge `git rev-list -2 --grep=nd/ origin/pu | tail -1`
for the nth one, and:
git merge `git rev-list --first-parent -1 --grep=nd/ origin/pu`
for a first parent search (I will leave combining them as an exercise to the reader).
It's not that I'm opposed to a handy ref-specifying syntax. I just wonder if it is really worth building in all of these obscure scenarios.
-Peff