From: Phil Hord <phil.hord@gmail.com>
To: Junio C Hamano <gitster@pobox.com>
Cc: Jonathan Nieder <jrnieder@gmail.com>, Phil Hord <hordp@cisco.com>,
"git@vger.kernel.org" <git@vger.kernel.org>
Subject: Re: [RFC/PATCH] Fix path prefixing in grep_object
Date: Tue, 27 Aug 2013 07:54:34 -0400 [thread overview]
Message-ID: <CABURp0r6neiqhOA=JsT67Oxr-zUNLpsr71bVc7F_hWWM61KoGQ@mail.gmail.com> (raw)
In-Reply-To: <xmqqhaebhj3u.fsf@gitster.dls.corp.google.com>
On Tue, Aug 27, 2013 at 12:07 AM, Junio C Hamano <gitster@pobox.com> wrote:
> Junio C Hamano <gitster@pobox.com> writes:
>
>> Not necessarily. If the user is asking the question in a more
>> natural way (I want to see where in 'next' branch's tip commit hits
>> appear, by the way, I know I am only interested in builtin/ so I'd
>> give pathspec as well when I am asking this question), the output
>> does give <commit> <colon> <path>, so it is more than coincidence.
>
> This part needs to be qualified. "Natural" is of course in the eyes
> of beholder. If we assume that your #1 holds true (i.e. the tuple
> <in which tree object are we reporting, what path we saw hits> is
> important and merging them into one <in what blob we saw hits> lose
> information),
"My #1" is really "what I inferred from your statements." I did not
think the tuple was important, but I agree that may be my
shortsightedness. If the tuple is important, then it seems to me that
the --null behavior is a bug (the colon is left intact); but changing
it now seems senseless or harmful.
> then it is natural to ask "inside origin/master tree,
> where do I have hits? By the way, I am only interested in builtin/"
> and get "origin/master:builtin/pack-objects.c" as an answer (this is
> from your earlier example), than asking "inside origin/master:builtin
> tree, where do I have hits?"
>
> If we do not consider #1 is false and the tree information can be
> discarded, then it does not matter if we converted the colon after
> origin/master to slash when we answer the latter question, and the
> latter question stops being unnatural.
>
>> ...
>> but it might be a good change to allow A:B:C to be parsed as a
>> proper extended SHA-1 expression and make it yield
>>
>> git rev-parse $(git rev-parse $(git rev-parse A):B):C
>>
>> Right now, "B:C" is used as a path inside tree-ish "A", but I think
>> we can safely fall back, when path B:C does not appear in tree-ish
>> A, to see if path B appears in it and is a tree, and then turn it
>> into a look-up of path C in that tree A:B.
>
> And if we want to keep the <tree, path> tuple, but still want to
> make it easier to work with the output, allowing A:B:C to be parsed
> as an extended SHA-1 expression would be a reasonable solution, not
> a work-around. The answer is given to the question asked in either
> way (either "in origin/master, but limited to these pathspecs" or
> "in the tree origin/master:builtin/") without losing information,
> but the issue you had is that the answer to the latter form of
> question is not understood by the object name parser, which I
> personally think is a bug.
I am beginning to agree, though we discovered some other weird output
from grep which also does not parse. (origin/master:../relative/path).
It seems that fixing this bug could be very confusing for
get_sha1_with_context unless the context was rewritten to match the
traditional syntax.
P
next prev parent reply other threads:[~2013-08-27 11:55 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-08-25 1:35 [RFC/PATCH] Fix path prefixing in grep_object Phil Hord
2013-08-25 2:07 ` Phil Hord
2013-08-25 3:35 ` Junio C Hamano
2013-08-25 4:23 ` Jonathan Nieder
2013-08-25 5:25 ` Junio C Hamano
2013-08-26 7:14 ` Junio C Hamano
2013-08-26 11:44 ` Phil Hord
2013-08-26 16:23 ` Junio C Hamano
2013-08-26 16:49 ` Phil Hord
2013-08-26 17:07 ` Phil Hord
2013-08-26 17:26 ` Junio C Hamano
2013-08-26 17:45 ` Phil Hord
2013-08-27 4:07 ` Junio C Hamano
2013-08-27 11:54 ` Phil Hord [this message]
2013-08-26 17:03 ` Junio C Hamano
2013-08-26 17:19 ` Phil Hord
2013-08-25 4:41 ` Jeff King
2013-08-25 5:41 ` Jonathan Nieder
2013-08-25 5: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='CABURp0r6neiqhOA=JsT67Oxr-zUNLpsr71bVc7F_hWWM61KoGQ@mail.gmail.com' \
--to=phil.hord@gmail.com \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=hordp@cisco.com \
--cc=jrnieder@gmail.com \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).