]> asedeno.scripts.mit.edu Git - git.git/blobdiff - Documentation/rev-list-options.txt
revision traversal: show full history with merge simplification
[git.git] / Documentation / rev-list-options.txt
index ce6a1017a34aed25efc192e889a9f04adb5aa2f3..ee6822a85df9965901403e99d353fc3c0e1a9eed 100644 (file)
@@ -13,10 +13,11 @@ include::pretty-options.txt[]
 
        Synonym for `--date=relative`.
 
---date={relative,local,default,iso,rfc}::
+--date={relative,local,default,iso,rfc,short}::
 
        Only takes effect for dates shown in human-readable format, such
-       as when using "--pretty".
+       as when using "--pretty". `log.date` config variable sets a default
+       value for log command's --date option.
 +
 `--date=relative` shows dates relative to the current time,
 e.g. "2 hours ago".
@@ -33,17 +34,25 @@ format, often found in E-mail messages.
 `--date=default` shows timestamps in the original timezone
 (either committer's or author's).
 
+ifdef::git-rev-list[]
 --header::
 
        Print the contents of the commit in raw-format; each record is
        separated with a NUL character.
+endif::git-rev-list[]
 
 --parents::
 
        Print the parents of the commit.
 
+--children::
+
+       Print the children of the commit.
+
+ifdef::git-rev-list[]
 --timestamp::
        Print the raw commit timestamp.
+endif::git-rev-list[]
 
 --left-right::
 
@@ -103,9 +112,9 @@ options may be given. See linkgit:git-diff-files[1] for more options.
 --cc::
 
        This flag implies the '-c' options and further compresses the
-       patch output by omitting hunks that show differences from only
-       one parent, or show the same change from all but one parent for
-       an Octopus merge.
+       patch output by omitting uninteresting hunks whose contents in
+       the parents have only two variants and the merge result picks
+       one of them without modification.
 
 -r::
 
@@ -124,7 +133,8 @@ limiting may be applied.
 
 --
 
--n 'number', --max-count='number'::
+-n 'number'::
+--max-count='number'::
 
        Limit the number of commits output.
 
@@ -132,21 +142,25 @@ limiting may be applied.
 
        Skip 'number' commits before starting to show the commit output.
 
---since='date', --after='date'::
+--since='date'::
+--after='date'::
 
        Show commits more recent than a specific date.
 
---until='date', --before='date'::
+--until='date'::
+--before='date'::
 
        Show commits older than a specific date.
 
 ifdef::git-rev-list[]
---max-age='timestamp', --min-age='timestamp'::
+--max-age='timestamp'::
+--min-age='timestamp'::
 
        Limit the commits output to specified time range.
 endif::git-rev-list[]
 
---author='pattern', --committer='pattern'::
+--author='pattern'::
+--committer='pattern'::
 
        Limit the commits output to ones with author/committer
        header lines that match the specified pattern (regular expression).
@@ -156,16 +170,19 @@ endif::git-rev-list[]
        Limit the commits output to ones with log message that
        matches the specified pattern (regular expression).
 
--i, --regexp-ignore-case::
+-i::
+--regexp-ignore-case::
 
        Match the regexp limiting patterns without regard to letters case.
 
--E, --extended-regexp::
+-E::
+--extended-regexp::
 
        Consider the limiting patterns to be extended regular expressions
        instead of the default basic regular expressions.
 
--F, --fixed-strings::
+-F::
+--fixed-strings::
 
        Consider the limiting patterns to be fixed strings (don't interpret
        pattern as a regular expression).
@@ -176,12 +193,18 @@ endif::git-rev-list[]
 
 --full-history::
 
-       Show also parts of history irrelevant to current state of given
-       path. This turns off history simplification, which removed merges
+       Show also parts of history irrelevant to current state of given
+       paths. 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.
 
+--simplify-merges::
+
+       Simplify away commits that did not change the given paths, similar
+       to `--full-history`, and further remove merges none of whose
+       parent history changes the given paths.
+
 --no-merges::
 
        Do not print commits with more than one parent.
@@ -205,6 +228,7 @@ endif::git-rev-list[]
        Pretend as if all the refs in `$GIT_DIR/refs/` are listed on the
        command line as '<commit>'.
 
+ifdef::git-rev-list[]
 --stdin::
 
        In addition to the '<commit>' listed on the command
@@ -217,6 +241,7 @@ endif::git-rev-list[]
        test the exit status to see if a range of objects is fully
        connected (or not).  It is faster than redirecting stdout
        to /dev/null as the output does not have to be formatted.
+endif::git-rev-list[]
 
 --cherry-pick::
 
@@ -232,7 +257,8 @@ 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::
+-g::
+--walk-reflogs::
 
        Instead of walking the commit ancestry chain, walk
        reflog entries from the most recent one to older ones.
@@ -261,7 +287,8 @@ See also linkgit:git-reflog[1].
        Output uninteresting commits at the boundary, which are usually
        not shown.
 
---dense, --sparse::
+--dense::
+--sparse::
 
 When optional paths are given, the default behaviour ('--dense') is to
 only output commits that changes at least one of them, and also ignore