.\"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" 1 "" "" "" .SH NAME git-diff \- Show changes between commits, commit and working tree, etc. .SH "SYNOPSIS" git\-diff [ \-\-diff\-options ] {0,2} [...] .SH "DESCRIPTION" Show changes between two ents, an ent and the working tree, an ent and the index file, or the index file and the working tree\&. The combination of what is compared with what is determined by the number of ents given to the command\&. .TP 3 \(bu When no is given, the working tree and the index file is compared, using git\-diff\-files\&. .TP \(bu When one is given, the working tree and the named tree is compared, using git\-diff\-index\&. The option \-\-cached can be given to compare the index file and the named tree\&. .TP \(bu When two s are given, these two trees are compared using git\-diff\-tree\&. .LP .SH "OPTIONS" .TP \-\-diff\-options \-\-diff\-options are passed to the git\-diff\-files, git\-diff\-index, and git\-diff\-tree commands\&. See the documentation for these commands for description\&. .TP ... The arguments are also passed to git\-diff\-* commands\&. .SH "EXAMPLES" .TP Various ways to check your working tree .IP $ git diff $ git diff \-\-cached $ git diff HEAD changes in the working tree since your last git\-update\-index\&. changes between the index and your last commit; what you would be committing if you run "git commit" without "\-a" option\&. changes in the working tree since your last commit; what you would be committing if you run "git commit \-a" .TP Comparing with arbitrary commits .IP $ git diff test $ git diff HEAD \-\- \&./test $ git diff HEAD^ HEAD instead of using the tip of the current branch, compare with the tip of "test" branch\&. instead of comparing with the tip of "test" branch, compare with the tip of the current branch, but limit the comparison to the file "test"\&. compare the version before the last commit and the last commit\&. .TP Limiting the diff output .IP $ git diff \-\-diff\-filter=MRC $ git diff \-\-name\-status \-r $ git diff arch/i386 include/asm\-i386 show only modification, rename and copy, but not addition nor deletion\&. show only names and the nature of change, but not actual diff output\&. \-\-name\-status disables usual patch generation which in turn also disables recursive behaviour, so without \-r you would only see the directory name if there is a change in a file in a subdirectory\&. limit diff output to named subtrees\&. .TP Munging the diff output .IP $ git diff \-\-find\-copies\-harder \-B \-C $ git diff \-R spend extra cycles to find renames, copies and complete rewrites (very expensive)\&. output diff in reverse\&. .SH "AUTHOR" Written by Linus Torvalds .SH "DOCUMENTATION" Documentation by Junio C Hamano and the git\-list \&. .SH "GIT" Part of the \fBgit\fR(7) suite