.\"Generated by db2man.xsl. Don't modify this, modify the source. .de Sh \" Subsection .br .if t .Sp .ne 5 .PP \fB\\$1\fR .PP .. .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Ip \" List item .br .ie \\n(.$>=3 .ne \\$3 .el .ne 3 .IP "\\$1" \\$2 .. .TH "GIT-REV-LIST" 1 "" "" "" .SH NAME git-rev-list \- Lists commit objects in reverse chronological order .SH "SYNOPSIS" .nf \fIgit\-rev\-list\fR [ \-\-max\-count=number ] [ \-\-max\-age=timestamp ] [ \-\-min\-age=timestamp ] [ \-\-sparse ] [ \-\-no\-merges ] [ \-\-remove\-empty ] [ \-\-all ] [ \-\-topo\-order ] [ \-\-parents ] [ [\-\-objects | \-\-objects\-edge] [ \-\-unpacked ] ] [ \-\-pretty | \-\-header ] [ \-\-bisect ] ... [ \-\- ... ] .fi .SH "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 \fI^\fR cause listing to stop at that point\&. Their parents are implied\&. "git\-rev\-list foo bar ^baz" thus means "list all the commits which are included in \fIfoo\fR and \fIbar\fR, but not in \fIbaz\fR"\&. A special notation \&.\&. can be used as a short\-hand for ^ \&. .SH "OPTIONS" .TP \-\-pretty Print the contents of the commit changesets in human\-readable form\&. .TP \-\-header Print the contents of the commit in raw\-format; each record is separated with a NUL character\&. .TP \-\-objects Print the object IDs of any object referenced by the listed commits\&. \fIgit\-rev\-list \-\-objects foo ^bar\fR thus means "send me all object IDs which I need to download if I have the commit object \fIbar\fR, but not \fIfoo\fR"\&. .TP \-\-objects\-edge Similar to \-\-objects, but also print the IDs of excluded commits refixed with a \- character\&. This is used by git\-pack\-objects to build \fIthin\fR pack, which records objects in deltified form based on objects contained in these excluded commits to reduce network traffic\&. .TP \-\-unpacked Only useful with \-\-objects; print the object IDs that are not in packs\&. .TP \-\-bisect Limit output to the one commit object which is roughly halfway between the included and excluded commits\&. Thus, if \fIgit\-rev\-list \-\-bisect foo ^bar ^baz\fR outputs \fImidpoint\fR, the output of \fIgit\-rev\-list foo ^midpoint\fR and \fIgit\-rev\-list midpoint ^bar ^baz\fR would be of roughly the same length\&. Finding the change which introduces a regression is thus reduced to a binary search: repeatedly generate and test new 'midpoint's until the commit chain is of length one\&. .TP \-\-max\-count Limit the number of commits output\&. .TP \-\-max\-age=timestamp, \-\-min\-age=timestamp Limit the commits output to specified time range\&. .TP \-\-sparse When optional paths are given, the command outputs only the commits that changes at least one of them, and also ignores merges that do not touch the given paths\&. This flag makes the command output all eligible commits (still subject to count and age limitation), but apply merge simplification nevertheless\&. .TP \-\-remove\-empty Stop when a given path disappears from the tree\&. .TP \-\-all Pretend as if all the refs in $GIT_DIR/refs/ are listed on the command line as \&. .TP \-\-topo\-order By default, the commits are shown in reverse chronological order\&. This option makes them appear in topological order (i\&.e\&. descendant commits are shown before their parents)\&. .SH "AUTHOR" Written by Linus Torvalds .SH "DOCUMENTATION" Documentation by David Greaves, Junio C Hamano and the git\-list \&. .SH "GIT" Part of the \fBgit\fR(7) suite