git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: git grep --no-index and absolute paths don't work?

From
Lars Noschinski <lars@public.noschinski.de>
Date
Oct 21, 2011, 11:49 UTC
Message-ID
<20111021114952.GA2797@lars.home.noschinski.de>
In-Reply-To
<1319180973.5352.8.camel@bee.lab.cmartin.tk>
* Carlos Martín Nieto <cmn@elego.de> [11-10-21 09:09]:
Show 11 quoted lines
> On Fri, 2011-10-21 at 08:34 +0200, Bert Wesarg wrote:
> > I'm currently  totally confused, that a
> > 
> >     git grep --no-index foo /usr/include
> > 
> > does not work. I know that the documentation says "in the current
> > directory" for the --no-index flag. But this does not work ether:
> 
> The rest of the sentence reads ", not just those tracked by git" which
> implies that the files tracked by git are also searched. This requires a
> git repository.

git grep --no-index works outside of git repositories (at least with relative paths).

Show 12 quoted lines
> >     cd ~; git grep --no-index foo ~/.bashrc
> > 
> > They all fail with 'is outside repository'. Which is for itself vary
> > misleading, because I intentionally said --no-index.
> 
> Git is a tool that works on git repositories. Some commands may work
> outside of a repository, like ls-remote when given an URL or init (for
> obvious reasons) but it's not something that should be expected,
> especially for commands that read files from the working tree.
> 
> Why are you trying to use git's grep command outside a repository? Why
> isn't 'grep -nr foo /usr/include/' good enough?

There are a few nice things about git's grep, which GNU grep does not have:

  - automatic usage of pager
  - support for pathspecs (can be emulated with `find ...`)
  - support for boolean combinations of regular expressions
  -- Lars.
Previous: Carlos Martín NietoNext: Bert Wesarg
Message 3 of 6 in “git grep --no-index and absolute paths don't work?”
  1. Bert WesargOct 21, 2011
  2. Carlos Martín NietoOct 21, 2011
  3. Lars NoschinskiOct 21, 2011
  4. Bert WesargOct 21, 2011
  5. Junio C HamanoOct 21, 2011
  6. Bert WesargOct 21, 2011

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.