Move MERGE_RR from .git/rr-cache/ into .git/
[gitweb.git] / Documentation / git-diff-tree.txt
index 9153e4cf2a1020dc9a3b5792ff3f64f7efd9f42c..0e45b58d8332cc9f48e0e18165f536adb94a5c6f 100644 (file)
@@ -9,7 +9,7 @@ git-diff-tree - Compares the content and mode of blobs found via two tree object
 SYNOPSIS
 --------
 [verse]
-'git-diff-tree' [--stdin] [-m] [-s] [-v] [--no-commit-id] [--pretty]
+'git diff-tree' [--stdin] [-m] [-s] [-v] [--no-commit-id] [--pretty]
              [-t] [-r] [-c | --cc] [--root] [<common diff options>]
              <tree-ish> [<tree-ish>] [<path>...]
 
@@ -20,7 +20,7 @@ Compares the content and mode of the blobs found via two tree objects.
 If there is only one <tree-ish> given, the commit is compared with its parents
 (see --stdin below).
 
-Note that "git-diff-tree" can use the tree encapsulated in a commit object.
+Note that 'git-diff-tree' can use the tree encapsulated in a commit object.
 
 OPTIONS
 -------
@@ -32,7 +32,7 @@ include::diff-options.txt[]
 <path>...::
        If provided, the results are limited to a subset of files
        matching one of these prefix strings.
-       ie file matches `/^<pattern1>|<pattern2>|.../`
+       i.e., file matches `/^<pattern1>|<pattern2>|.../`
        Note that this parameter does not provide any wildcard or regexp
        features.
 
@@ -54,64 +54,71 @@ include::diff-options.txt[]
 +
 When a single commit is given on one line of such input, it compares
 the commit with its parents.  The following flags further affects its
-behaviour.  This does not apply to the case where two <tree-ish>
+behavior.  This does not apply to the case where two <tree-ish>
 separated with a single space are given.
 
 -m::
-       By default, "git-diff-tree --stdin" does not show
+       By default, 'git-diff-tree --stdin' does not show
        differences for merge commits.  With this flag, it shows
-       differences to that commit from all of its parents.
+       differences to that commit from all of its parents. See
+       also '-c'.
 
 -s::
-       By default, "git-diff-tree --stdin" shows differences,
+       By default, 'git-diff-tree --stdin' shows differences,
        either in machine-readable form (without '-p') or in patch
        form (with '-p').  This output can be suppressed.  It is
        only useful with '-v' flag.
 
 -v::
-       This flag causes "git-diff-tree --stdin" to also show
+       This flag causes 'git-diff-tree --stdin' to also show
        the commit message before the differences.
 
---pretty[=(raw|medium|short)]::
-       This is used to control "pretty printing" format of the
-       commit message.  Without "=<style>", it defaults to
-       medium.
+include::pretty-options.txt[]
 
 --no-commit-id::
-       git-diff-tree outputs a line with the commit ID when
+       'git-diff-tree' outputs a line with the commit ID when
        applicable.  This flag suppressed the commit ID output.
 
--c,--cc::
-       These flags change the way a merge commit is displayed
+-c::
+       This flag changes the way a merge commit is displayed
        (which means it is useful only when the command is given
        one <tree-ish>, or '--stdin').  It shows the differences
-       from each of the parents to the merge result
-       simultaneously, instead of showing pairwise diff between
-       a parent and the result one at a time, which '-m' option
-       output does.  '--cc' further compresses the output by
-       omiting hunks that show differences from only one
+       from each of the parents to the merge result simultaneously
+       instead of showing pairwise diff between a parent and the
+       result one at a time (which is what the '-m' option does).
+       Furthermore, it lists only files which were modified
+       from all parents.
+
+--cc::
+       This flag changes the way a merge commit patch is displayed,
+       in a similar way to the '-c' option. It implies the '-c'
+       and '-p' 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.  When this optimization makes all
        hunks disappear, the commit itself and the commit log
-       message is not shown, just like any other "empty diff" cases.
+       message is not shown, just like in any other "empty diff" case.
 
 --always::
        Show the commit itself and the commit log message even
        if the diff itself is empty.
 
 
+include::pretty-formats.txt[]
+
+
 Limiting Output
 ---------------
 If you're only interested in differences in a subset of files, for
 example some architecture-specific files, you might do:
 
-       git-diff-tree -r <tree-ish> <tree-ish> arch/ia64 include/asm-ia64
+       git diff-tree -r <tree-ish> <tree-ish> arch/ia64 include/asm-ia64
 
 and it will only show you what changed in those two directories.
 
 Or if you are searching for what changed in just `kernel/sched.c`, just do
 
-       git-diff-tree -r <tree-ish> <tree-ish> kernel/sched.c
+       git diff-tree -r <tree-ish> <tree-ish> kernel/sched.c
 
 and it will ignore all differences to other files.
 
@@ -122,7 +129,7 @@ so it can be used to name subdirectories.
 
 An example of normal usage is:
 
-  torvalds@ppc970:~/git> git-diff-tree 5319e4......
+  torvalds@ppc970:~/git> git diff-tree 5319e4......
   *100664->100664 blob    ac348b.......->a01513.......      git-fsck-objects.c
 
 which tells you that the last commit changed just one file (it's from
@@ -158,5 +165,4 @@ Documentation by David Greaves, Junio C Hamano and the git-list <git@vger.kernel
 
 GIT
 ---
-Part of the gitlink:git[7] suite
-
+Part of the linkgit:git[1] suite