Re: What's cooking in git.git (Nov 2008, #06; Wed, 26)
On 12/12/08, Johannes Sixt <j.sixt@viscovery.net> wrote:
Show 24 quoted lines
> Nguyen Thai Ngoc Duy schrieb:
>
> > On 12/12/08, Junio C Hamano <gitster@pobox.com> wrote:
> >> So "git grep -e frotz Documentation/", whether you only check out
> >> Documentation or the whole tree, should grep only in Documentation area,
> >> and "git grep -e frotz" should grep in the whole tree, even if you happen
> >> to have a sparse checkout. By definition, a sparse checkout has no
> >> modifications outside the checkout area, so whenever grep wants to look
> >> for strings outside the checkout area it should pretend as if the same
> >> content as what the index records is in the work tree. This is consistent
> >> with the way how "git diff" in a sparsely checked out work tree should
> >> behave.
> >
> > Assume someone is using sparse checkout with KDE git repository. They
> > sparse-checkout kdeutils module and do "git grep -e foo". I would
> > expect that the command only searches in kdeutils only (and is the
> > current behavior).
>
>
> But what if the same persion notices a #define in a kdeutils header file
> and want's to know whether it is unused in order to remove it:
>
> $ git grep FOO
> kdeutils/foo.h:#define FOO bar
"git grep --cached FOO" ?
Show 8 quoted lines
> Conclusion from this output: "It's only defined, but not used anywhere."
> But this conclusion is not necessarily correct because FOO could be used
> outside kdeutils.
>
> So, no, "git grep" should disregard the checkout area.
>
> -- Hannes
>
--
Duy