X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=Documentation%2Fgit-diff-tree.txt;h=5d48664e624f59e0df16121ed67d84939f6d2a31;hb=106db883b791efb7f39f3b2f8553236ba792a89e;hp=68feb081721a139f478f13aa7b533121432b18bd;hpb=483bc4f045881b998512ae814d6cf44d0c0cb493;p=git.git diff --git a/Documentation/git-diff-tree.txt b/Documentation/git-diff-tree.txt index 68feb0817..5d48664e6 100644 --- a/Documentation/git-diff-tree.txt +++ b/Documentation/git-diff-tree.txt @@ -20,7 +20,7 @@ Compares the content and mode of the blobs found via two tree objects. If there is only one 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 ------- @@ -49,34 +49,43 @@ include::diff-options.txt[] --stdin:: When '--stdin' is specified, the command does not take arguments from the command line. Instead, it - reads either one or a pair of - separated with a single space from its standard input. + reads lines containing either two , one , or a + list of from its standard input. (Use a single space + as separator.) + -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 -behavior. This does not apply to the case where two -separated with a single space are given. +When two trees are given, it compares the first tree with the second. +When a single commit is given, it compares the commit with its +parents. The remaining commits, when given, are used as if they are +parents of the first commit. ++ +When comparing two trees, the ID of both trees (separated by a space +and terminated by a newline) is printed before the difference. When +comparing commits, the ID of the first (or only) commit, followed by a +newline, is printed. ++ +The following flags further affects the behavior when comparing +commits (but not trees). -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. 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. 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:: @@ -93,11 +102,11 @@ include::pretty-options.txt[] 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 in any other "empty diff" case. + by omitting uninteresting hunks whose the contents in the parents + have only two variants and the merge result picks one of them + without modification. When all hunks are uninteresting, the commit + itself and the commit log message is not shown, just like in any other + "empty diff" case. --always:: Show the commit itself and the commit log message even