Autogenerated man pages for v1.2.4-g9201
[git.git] / man1 / git-rev-list.1
index 175200a..17a5567 100755 (executable)
@@ -23,16 +23,16 @@ git-rev-list \- Lists commit objects in reverse chronological order
 .SH "SYNOPSIS"
 
 .nf
-git\-rev\-list [ \-\-max\-count=number ]
+\fIgit\-rev\-list\fR [ \-\-max\-count=number ]
              [ \-\-max\-age=timestamp ]
              [ \-\-min\-age=timestamp ]
              [ \-\-sparse ]
              [ \-\-no\-merges ]
              [ \-\-remove\-empty ]
              [ \-\-all ]
-             [ [ \-\-merge\-order [ \-\-show\-breaks ] ] | [ \-\-topo\-order ] ]
+             [ \-\-topo\-order ]
              [ \-\-parents ]
-             [ \-\-objects [ \-\-unpacked ] ]
+             [ [\-\-objects | \-\-objects\-edge] [ \-\-unpacked ] ]
              [ \-\-pretty | \-\-header ]
              [ \-\-bisect ]
              <commit>... [ \-\- <paths>... ]
@@ -44,7 +44,7 @@ git\-rev\-list [ \-\-max\-count=number ]
 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 ^ 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 foo and bar, but not in baz"\&.
+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 <commit1>\&.\&.<commit2> can be used as a short\-hand for ^<commit1> <commit2>\&.
@@ -61,7 +61,11 @@ Print the contents of the commit in raw\-format; each record is separated with a
 
 .TP
 \-\-objects
-Print the object IDs of any object referenced by the listed commits\&. git\-rev\-list \-\-objects foo ^bar thus means "send me all object IDs which I need to download if I have the commit object bar, but not foo"\&.
+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
@@ -69,7 +73,7 @@ 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 git\-rev\-list \-\-bisect foo bar baz outputs midpoint, the output of git\-rev\-list foo ^midpoint and git\-rev\-list midpoint bar baz 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\&.
+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
@@ -95,49 +99,11 @@ Pretend as if all the refs in $GIT_DIR/refs/ are listed on the command line as <
 \-\-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)\&.
 
-.TP
-\-\-merge\-order
-When specified the commit history is decomposed into a unique sequence of minimal, non\-linear epochs and maximal, linear epochs\&. Non\-linear epochs are then linearised by sorting them into merge order, which is described below\&.
-
-Maximal, linear epochs correspond to periods of sequential development\&. Minimal, non\-linear epochs correspond to periods of divergent development followed by a converging merge\&. The theory of epochs is described in more detail at http://blackcubes\&.dyndns\&.org/epoch/: \fIhttp://blackcubes.dyndns.org/epoch/\fR\&.
-
-The merge order for a non\-linear epoch is defined as a linearisation for which the following invariants are true:
-
-.RS
-.TP 3
-1.
-if a commit P is reachable from commit N, commit P sorts after commit N in the linearised list\&.
-.TP
-2.
-if Pi and Pj are any two parents of a merge M (with i < j), then any commit N, such that N is reachable from Pj but not reachable from Pi, sorts before all commits reachable from Pi\&.
-
-Invariant 1 states that later commits appear before earlier commits they are derived from\&.
-
-Invariant 2 states that commits unique to "later" parents in a merge, appear before all commits from "earlier" parents of a merge\&.
-.LP
-.RE
-.IP
-
-.TP
-\-\-show\-breaks
-Each item of the list is output with a 2\-character prefix consisting of one of: (|), (^), (=) followed by a space\&.
-
-Commits marked with (=) represent the boundaries of minimal, non\-linear epochs and correspond either to the start of a period of divergent development or to the end of such a period\&.
-
-Commits marked with (|) are direct parents of commits immediately preceding the marked commit in the list\&.
-
-Commits marked with (^) are not parents of the immediately preceding commit\&. These "breaks" represent necessary discontinuities implied by trying to represent an arbitrary DAG in a linear form\&.
-
-\-\-show\-breaks is only valid if \-\-merge\-order is also specified\&.
-
 .SH "AUTHOR"
 
 
 Written by Linus Torvalds <torvalds@osdl\&.org>
 
-
-Original \-\-merge\-order logic by Jon Seymour <jon\&.seymour@gmail\&.com>
-
 .SH "DOCUMENTATION"