Code

Document git rev-list --full-history
[git.git] / Documentation / git-rev-list.txt
index 12b71ed0bbae2516cb67c98c96a56e6278a6f5c2..043ff5114705e8dddb0fecefdadd560613fd1c76 100644 (file)
@@ -16,14 +16,18 @@ SYNOPSIS
             [ \--sparse ]
             [ \--no-merges ]
             [ \--remove-empty ]
+            [ \--full-history ]
             [ \--not ]
             [ \--all ]
             [ \--stdin ]
             [ \--topo-order ]
             [ \--parents ]
             [ \--left-right ]
+            [ \--cherry-pick ]
             [ \--encoding[=<encoding>] ]
             [ \--(author|committer|grep)=<pattern> ]
+            [ \--regexp-ignore-case ] [ \--extended-regexp ]
+            [ \--date={local|relative|default} ]
             [ [\--objects | \--objects-edge] [ \--unpacked ] ]
             [ \--pretty | \--header ]
             [ \--bisect ]
@@ -85,13 +89,24 @@ Using these options, gitlink:git-rev-list[1] will act similar to the
 more specialized family of commit log tools: gitlink:git-log[1],
 gitlink:git-show[1], and gitlink:git-whatchanged[1]
 
-include::pretty-formats.txt[]
+include::pretty-options.txt[]
 
 --relative-date::
 
-       Show dates relative to the current time, e.g. "2 hours ago".
+       Synonym for `--date=relative`.
+
+--date={relative,local,default}::
+
        Only takes effect for dates shown in human-readable format, such
        as when using "--pretty".
++
+`--date=relative` shows dates relative to the current time,
+e.g. "2 hours ago".
++
+`--date=local` shows timestamps in user's local timezone.
++
+`--date=default` shows timestamps in the original timezone
+(either committer's or author's).
 
 --header::
 
@@ -194,17 +209,34 @@ limiting may be applied.
 --author='pattern', --committer='pattern'::
 
        Limit the commits output to ones with author/committer
-       header lines that match the specified pattern.
+       header lines that match the specified pattern (regular expression).
 
 --grep='pattern'::
 
        Limit the commits output to ones with log message that
-       matches the specified pattern.
+       matches the specified pattern (regular expression).
+
+--regexp-ignore-case::
+
+       Match the regexp limiting patterns without regard to letters case.
+
+--extended-regexp::
+
+       Consider the limiting patterns to be extended regular expressions
+       instead of the default basic regular expressions.
 
 --remove-empty::
 
        Stop when a given path disappears from the tree.
 
+--full-history::
+
+       Show also parts of history irrelevant to current state of a given
+       path. This turns off history simplification, which removed merges
+       which didn't change anything at all at some child. It will still actually
+       simplify away merges that didn't change anything at all into either
+       child.
+
 --no-merges::
 
        Do not print commits with more than one parent.
@@ -224,6 +256,20 @@ limiting may be applied.
        In addition to the '<commit>' listed on the command
        line, read them from the standard input.
 
+--cherry-pick::
+
+       Omit any commit that introduces the same change as
+       another commit on the "other side" when the set of
+       commits are limited with symmetric difference.
++
+For example, if you have two branches, `A` and `B`, a usual way
+to list all commits on only one side of them is with
+`--left-right`, like the example above in the description of
+that option.  It however shows the commits that were cherry-picked
+from the other branch (for example, "3rd on b" may be cherry-picked
+from branch A).  With this option, such pairs of commits are
+excluded from the output.
+
 -g, --walk-reflogs::
 
        Instead of walking the commit ancestry chain, walk
@@ -340,6 +386,10 @@ These options are mostly targeted for packing of git repositories.
        Only useful with '--objects'; print the object IDs that are not
        in packs.
 
+
+include::pretty-formats.txt[]
+
+
 Author
 ------
 Written by Linus Torvalds <torvalds@osdl.org>