.\"Generated by db2man.xsl. Don't modify this, modify the source. .de Sh \" Subsection .br .if t .Sp .ne 5 .PP \fB\\$1\fR .PP .. .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Ip \" List item .br .ie \\n(.$>=3 .ne \\$3 .el .ne 3 .IP "\\$1" \\$2 .. .TH "GIT-DIFF-TREE" 1 "" "" "" .SH NAME git-diff-tree \- Compares the content and mode of blobs found via two tree objects .SH "SYNOPSIS" .nf \fIgit\-diff\-tree\fR [\-\-stdin] [\-m] [\-s] [\-v] [\-\-no\-commit\-id] [\-\-pretty] [\-t] [\-r] [\-c | \-\-cc] [\-\-root] [] [] [...] .fi .SH "DESCRIPTION" 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\&. .SH "OPTIONS" .TP \-p Generate patch (see section on generating patches) .TP \-u Synonym for "\-p"\&. .TP \-\-patch\-with\-raw Generate patch but keep also the default raw diff output\&. .TP \-\-stat Generate a diffstat instead of a patch\&. .TP \-\-summary Output a condensed summary of extended header information such as creations, renames and mode changes\&. .TP \-\-patch\-with\-stat Generate patch and prepend its diffstat\&. .TP \-z \\0 line termination on output .TP \-\-name\-only Show only names of changed files\&. .TP \-\-name\-status Show only names and status of changed files\&. .TP \-\-full\-index Instead of the first handful characters, show full object name of pre\- and post\-image blob on the "index" line when generating a patch format output\&. .TP \-\-abbrev[=] Instead of showing the full 40\-byte hexadecimal object name in diff\-raw format output and diff\-tree header lines, show only handful hexdigits prefix\&. This is independent of \-\-full\-index option above, which controls the diff\-patch output format\&. Non default number of digits can be specified with \-\-abbrev=\&. .TP \-B Break complete rewrite changes into pairs of delete and create\&. .TP \-M Detect renames\&. .TP \-C Detect copies as well as renames\&. .TP \-\-diff\-filter=[ACDMRTUXB*] Select only files that are Added (A), Copied (C), Deleted (D), Modified (M), Renamed (R), have their type (mode) changed (T), are Unmerged (U), are Unknown (X), or have had their pairing Broken (B)\&. Any combination of the filter characters may be used\&. When * (All\-or\-none) is added to the combination, all paths are selected if there is any file that matches other criteria in the comparison; if there is no file that matches other criteria, nothing is selected\&. .TP \-\-find\-copies\-harder For performance reasons, by default, \-C option finds copies only if the original file of the copy was modified in the same changeset\&. This flag makes the command inspect unmodified files as candidates for the source of copy\&. This is a very expensive operation for large projects, so use it with caution\&. .TP \-l \-M and \-C options require O(n^2) processing time where n is the number of potential rename/copy targets\&. This option prevents rename/copy detection from running if the number of rename/copy targets exceeds the specified number\&. .TP \-S Look for differences that contain the change in \&. .TP \-\-pickaxe\-all When \-S finds a change, show all the changes in that changeset, not just the files that contain the change in \&. .TP \-\-pickaxe\-regex Make the not a plain string but an extended POSIX regex to match\&. .TP \-O Output the patch in the order specified in the , which has one shell glob pattern per line\&. .TP \-R Swap two inputs; that is, show differences from index or on\-disk file to tree contents\&. For more detailed explanation on these common options, see also diffcore documentation: \fIdiffcore.html\fR\&. .TP The id of a tree object\&. .TP ... If provided, the results are limited to a subset of files matching one of these prefix strings\&. i\&.e\&., file matches /^||.../ Note that this parameter does not provide any wildcard or regexp features\&. .TP \-r recurse into sub\-trees .TP \-t show tree entry itself as well as subtrees\&. Implies \-r\&. .TP \-\-root When \fI\-\-root\fR is specified the initial commit will be showed as a big creation event\&. This is equivalent to a diff against the NULL tree\&. .TP \-\-stdin When \fI\-\-stdin\fR 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\&. 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\&. .TP \-m 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 \fI\-c\fR\&. .TP \-s By default, "git\-diff\-tree \-\-stdin" shows differences, either in machine\-readable form (without \fI\-p\fR) or in patch form (with \fI\-p\fR)\&. This output can be suppressed\&. It is only useful with \fI\-v\fR flag\&. .TP \-v This flag causes "git\-diff\-tree \-\-stdin" to also show the commit message before the differences\&. .TP \-\-pretty[=(raw|medium|short)] This is used to control "pretty printing" format of the commit message\&. Without "=