| git-rev-list(1) | 
 | =============== | 
 |  | 
 | NAME | 
 | ---- | 
 | git-rev-list - Lists commit objects in reverse chronological order | 
 |  | 
 |  | 
 | SYNOPSIS | 
 | -------- | 
 | [verse] | 
 | 'git-rev-list' [ \--max-count=number ] | 
 | 	     [ \--skip=number ] | 
 | 	     [ \--max-age=timestamp ] | 
 | 	     [ \--min-age=timestamp ] | 
 | 	     [ \--sparse ] | 
 | 	     [ \--no-merges ] | 
 | 	     [ \--first-parent ] | 
 | 	     [ \--remove-empty ] | 
 | 	     [ \--full-history ] | 
 | 	     [ \--not ] | 
 | 	     [ \--all ] | 
 | 	     [ \--branches ] | 
 | 	     [ \--tags ] | 
 | 	     [ \--remotes ] | 
 | 	     [ \--stdin ] | 
 | 	     [ \--quiet ] | 
 | 	     [ \--topo-order ] | 
 | 	     [ \--parents ] | 
 | 	     [ \--timestamp ] | 
 | 	     [ \--left-right ] | 
 | 	     [ \--cherry-pick ] | 
 | 	     [ \--encoding[=<encoding>] ] | 
 | 	     [ \--(author|committer|grep)=<pattern> ] | 
 | 	     [ \--regexp-ignore-case | -i ] | 
 | 	     [ \--extended-regexp | -E ] | 
 | 	     [ \--fixed-strings | -F ] | 
 | 	     [ \--date={local|relative|default|iso|rfc|short} ] | 
 | 	     [ [\--objects | \--objects-edge] [ \--unpacked ] ] | 
 | 	     [ \--pretty | \--header ] | 
 | 	     [ \--bisect ] | 
 | 	     [ \--bisect-vars ] | 
 | 	     [ \--bisect-all ] | 
 | 	     [ \--merge ] | 
 | 	     [ \--reverse ] | 
 | 	     [ \--walk-reflogs ] | 
 | 	     [ \--no-walk ] [ \--do-walk ] | 
 | 	     <commit>... [ \-- <paths>... ] | 
 |  | 
 | DESCRIPTION | 
 | ----------- | 
 |  | 
 | Lists commit objects in reverse chronological order starting at the | 
 | given commit(s), taking ancestry relationship into account.  This is | 
 | useful to produce human-readable log output. | 
 |  | 
 | Commits which are stated with a preceding '{caret}' cause listing to | 
 | stop at that point. Their parents are implied. Thus the following | 
 | command: | 
 |  | 
 | ----------------------------------------------------------------------- | 
 | 	$ git rev-list foo bar ^baz | 
 | ----------------------------------------------------------------------- | 
 |  | 
 | means "list all the commits which are included in 'foo' and 'bar', but | 
 | not in 'baz'". | 
 |  | 
 | A special notation "'<commit1>'..'<commit2>'" can be used as a | 
 | short-hand for "{caret}'<commit1>' '<commit2>'". For example, either of | 
 | the following may be used interchangeably: | 
 |  | 
 | ----------------------------------------------------------------------- | 
 | 	$ git rev-list origin..HEAD | 
 | 	$ git rev-list HEAD ^origin | 
 | ----------------------------------------------------------------------- | 
 |  | 
 | Another special notation is "'<commit1>'...'<commit2>'" which is useful | 
 | for merges.  The resulting set of commits is the symmetric difference | 
 | between the two operands.  The following two commands are equivalent: | 
 |  | 
 | ----------------------------------------------------------------------- | 
 | 	$ git rev-list A B --not $(git merge-base --all A B) | 
 | 	$ git rev-list A...B | 
 | ----------------------------------------------------------------------- | 
 |  | 
 | 'git-rev-list' is a very essential git program, since it | 
 | provides the ability to build and traverse commit ancestry graphs. For | 
 | this reason, it has a lot of different options that enables it to be | 
 | used by commands as different as 'git-bisect' and | 
 | 'git-repack'. | 
 |  | 
 | OPTIONS | 
 | ------- | 
 |  | 
 | :git-rev-list: 1 | 
 | include::rev-list-options.txt[] | 
 |  | 
 | include::pretty-formats.txt[] | 
 |  | 
 |  | 
 | Author | 
 | ------ | 
 | Written by Linus Torvalds <torvalds@osdl.org> | 
 |  | 
 | Documentation | 
 | -------------- | 
 | Documentation by David Greaves, Junio C Hamano, Jonas Fonseca | 
 | and the git-list <git@vger.kernel.org>. | 
 |  | 
 | GIT | 
 | --- | 
 | Part of the linkgit:git[1] suite |