User Tools

Site Tools


git_searching

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
git_searching [2019/02/21 13:58]
rpjday [Searching for author]
git_searching [2019/02/21 14:17] (current)
rpjday [Config options]
Line 20: Line 20:
 $ git log --author="​Robert P. J. Day" --oneline $ git log --author="​Robert P. J. Day" --oneline
 $ git log --author="​Robert P. J. Day" --oneline | wc -l $ git log --author="​Robert P. J. Day" --oneline | wc -l
 +104
 $ git log -i --author="​robert p. j. day" $ git log -i --author="​robert p. j. day"
 </​code>​ </​code>​
Line 61: Line 62:
 </​code>​ </​code>​
  
-Examples:+Ignoring case:
  
 <​code>​ <​code>​
 $ git log --grep="​Tagging"​ --oneline | wc -l $ git log --grep="​Tagging"​ --oneline | wc -l
-75+6
 $ git log --grep="​tagging"​ --oneline | wc -l $ git log --grep="​tagging"​ --oneline | wc -l
-75 +9 
-$ git log -i --grep="​tagging"​ | wc -l +$ git log -i --grep="​tagging" ​--oneline ​| wc -l 
-109+13
 $ $
 </​code>​ </​code>​
 +
 +Specifying AND or OR:
  
 <​code>​ <​code>​
Line 96: Line 99:
       - Clarify the need for [-l|--llist]       - Clarify the need for [-l|--llist]
       - Some minor rewording       - Some minor rewording
 +$
 +</​code>​
 +
 +==== Ignoring merge commits with "​--no-merges"​ ====
 +
 +In many cases, merge commits are of no interest since they simply merge commits that produce actual change.
 +
 +<​code>​
 +$ git log --author="​Ben Straub"​ --oneline | wc -l
 +803
 +$ git log --author="​Ben Straub"​ --oneline --no-merges | wc -l
 +300
 +$
 +</​code>​
 +
 +===== Searching with "git grep" =====
 +
 +==== DESCRIPTION ====
 +
 +<​code>​
 +Look for specified patterns in the tracked files in the work
 +tree, blobs registered in the index file, or blobs in given
 +tree objects. Patterns are lists of one or more search
 +expressions separated by newline characters. An empty string as
 +search expression matches all lines.
 +</​code>​
 +
 +==== SYNOPSIS ====
 +
 +Options:
 +
 +<​code>​
 +[-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] [--column]
 +  [-l | --files-with-matches] [-L | --files-without-match]
 +  [(-O | --open-files-in-pager) [<​pager>​]]
 +  [-z | --null]
 +  [ -o | --only-matching ] [-c | --count] [--all-match] [-q | --quiet]
 +  [--max-depth <​depth>​] [--[no-]recursive]
 +  [--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>​...]
 +</​code>​
 +
 +==== Config options ====
 +
 +  * ''​grep.lineNumber''​
 +  * ''​grep.patternType''​
 +  * ''​grep.extendedRegexp''​
 +  * ''​grep.threads''​
 +  * ''​grep.fullName''​
 +  * ''​grep.fallbackToNoIndex''​
 +
 +See ''​man git-config''​.
 +
 +==== Examples ====
 +
 +<​code>​
 +$ git grep -il torvalds ​
 +book/​01-introduction/​sections/​history.asc
 +book/​07-git-tools/​sections/​debugging.asc
 $ $
 </​code>​ </​code>​
git_searching.1550757509.txt.gz · Last modified: 2019/02/21 13:58 by rpjday