This is an old revision of the document!


How to use git grep to search only tracked files, or tracked and new files, etc.

git grep [-a | --text] [-I] [--textconv] [-i | --ignore-case] [-w | --word-regexp]
         [-v | --invert-match] [-h|-H] [--full-name]
         [-E | --extended-regexp] [-G | --basic-regexp]
         [-P | --perl-regexp]
         [-F | --fixed-strings] [-n | --line-number]
         [-l | --files-with-matches] [-L | --files-without-match]
         [(-O | --open-files-in-pager) [<pager>]]
         [-z | --null]
         [-c | --count] [--all-match] [-q | --quiet]
         [--max-depth <depth>]
         [--color[=<when>] | --no-color]
         [--break] [--heading] [-p | --show-function]
         [-A <post-context>] [-B <pre-context>] [-C <context>]
         [-W | --function-context]
         [--threads <num>]
         [-f <file>] [-e] <pattern>
         [--and|--or|--not|(|)|-e <pattern>...]
         [--recurse-submodules] [--parent-basename <basename>]
         [ [--[no-]exclude-standard] [--cached | --no-index | --untracked] | <tree>...]
         [--] [<pathspec>...]

NOTE: If you don't specify a <pathspec> to search, it (apparently) defaults to the current working directory – this is not obvious from the man page.

  • grep.lineNumber
  • grep.patternType
  • grep.extendedRegexp
  • grep.threads
  • grep.fullName
  • grep.fallbackToNoIndex
--cached
    Instead of searching tracked files in the working tree, search
    blobs registered in the index file.

--no-index
    Search files in the current directory that is not managed by Git.

--untracked
    In addition to searching in the tracked files in the working
    tree, search also in untracked files.

--no-exclude-standard
    Also search in ignored files by not honoring the .gitignore
    mechanism. Only useful with --untracked.

--exclude-standard
    Do not pay attention to ignored files specified via the
    .gitignore mechanism. Only useful when searching files in the
    current directory with --no-index.

Search a subdirectory:

$ git grep -il torvalds -- scripts/
scripts/checkstack.pl
scripts/get_maintainer.pl
scripts/package/mkdebian
$
  • git_grep.1527154979.txt.gz
  • Last modified: 2018/05/24 09:42
  • by rpjday