<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" lang="en">
<head>
<meta charset="UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=edge"/>
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
<meta name="generator" content="Asciidoctor 2.0.26"/>
<title>git-diff(1)</title>
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Open+Sans:300,300italic,400,400italic,600,600italic%7CNoto+Serif:400,400italic,700,700italic%7CDroid+Sans+Mono:400,700"/>
<style>
/*! Asciidoctor default stylesheet | MIT License | https://asciidoctor.org */
/* Uncomment the following line when using as a custom stylesheet */
/* @import "https://fonts.googleapis.com/css?family=Open+Sans:300,300italic,400,400italic,600,600italic%7CNoto+Serif:400,400italic,700,700italic%7CDroid+Sans+Mono:400,700"; */
html{font-family:sans-serif;-webkit-text-size-adjust:100%}
a{background:none}
a:focus{outline:thin dotted}
a:active,a:hover{outline:0}
h1{font-size:2em;margin:.67em 0}
b,strong{font-weight:bold}
abbr{font-size:.9em}
abbr[title]{cursor:help;border-bottom:1px dotted #dddddf;text-decoration:none}
dfn{font-style:italic}
hr{height:0}
mark{background:#ff0;color:#000}
code,kbd,pre,samp{font-family:monospace;font-size:1em}
pre{white-space:pre-wrap}
q{quotes:"\201C" "\201D" "\2018" "\2019"}
small{font-size:80%}
sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}
sup{top:-.5em}
sub{bottom:-.25em}
img{border:0}
svg:not(:root){overflow:hidden}
figure{margin:0}
audio,video{display:inline-block}
audio:not([controls]){display:none;height:0}
fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}
legend{border:0;padding:0}
button,input,select,textarea{font-family:inherit;font-size:100%;margin:0}
button,input{line-height:normal}
button,select{text-transform:none}
button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}
button[disabled],html input[disabled]{cursor:default}
input[type=checkbox],input[type=radio]{padding:0}
button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}
textarea{overflow:auto;vertical-align:top}
table{border-collapse:collapse;border-spacing:0}
*,::before,::after{box-sizing:border-box}
html,body{font-size:100%}
body{background:#fff;color:rgba(0,0,0,.8);padding:0;margin:0;font-family:"Noto Serif","DejaVu Serif",serif;line-height:1;position:relative;cursor:auto;-moz-tab-size:4;-o-tab-size:4;tab-size:4;word-wrap:anywhere;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}
a:hover{cursor:pointer}
img,object,embed{max-width:100%;height:auto}
object,embed{height:100%}
img{-ms-interpolation-mode:bicubic}
.left{float:left!important}
.right{float:right!important}
.text-left{text-align:left!important}
.text-right{text-align:right!important}
.text-center{text-align:center!important}
.text-justify{text-align:justify!important}
.hide{display:none}
img,object,svg{display:inline-block;vertical-align:middle}
textarea{height:auto;min-height:50px}
select{width:100%}
.subheader,.admonitionblock td.content>.title,.audioblock>.title,.exampleblock>.title,.imageblock>.title,.listingblock>.title,.literalblock>.title,.stemblock>.title,.openblock>.title,.paragraph>.title,.quoteblock>.title,table.tableblock>.title,.verseblock>.title,.videoblock>.title,.dlist>.title,.olist>.title,.ulist>.title,.qlist>.title,.hdlist>.title{line-height:1.45;color:#7a2518;font-weight:400;margin-top:0;margin-bottom:.25em}
div,dl,dt,dd,ul,ol,li,h1,h2,h3,#toctitle,.sidebarblock>.content>.title,h4,h5,h6,pre,form,p,blockquote,th,td{margin:0;padding:0}
a{color:#2156a5;text-decoration:underline;line-height:inherit}
a:hover,a:focus{color:#1d4b8f}
a img{border:0}
p{line-height:1.6;margin-bottom:1.25em;text-rendering:optimizeLegibility}
p aside{font-size:.875em;line-height:1.35;font-style:italic}
h1,h2,h3,#toctitle,.sidebarblock>.content>.title,h4,h5,h6{font-family:"Open Sans","DejaVu Sans",sans-serif;font-weight:300;font-style:normal;color:#ba3925;text-rendering:optimizeLegibility;margin-top:1em;margin-bottom:.5em;line-height:1.0125em}
h1 small,h2 small,h3 small,#toctitle small,.sidebarblock>.content>.title small,h4 small,h5 small,h6 small{font-size:60%;color:#e99b8f;line-height:0}
h1{font-size:2.125em}
h2{font-size:1.6875em}
h3,#toctitle,.sidebarblock>.content>.title{font-size:1.375em}
h4,h5{font-size:1.125em}
h6{font-size:1em}
hr{border:solid #dddddf;border-width:1px 0 0;clear:both;margin:1.25em 0 1.1875em}
em,i{font-style:italic;line-height:inherit}
strong,b{font-weight:bold;line-height:inherit}
small{font-size:60%;line-height:inherit}
code{font-family:"Droid Sans Mono","DejaVu Sans Mono",monospace;font-weight:400;color:rgba(0,0,0,.9)}
ul,ol,dl{line-height:1.6;margin-bottom:1.25em;list-style-position:outside;font-family:inherit}
ul,ol{margin-left:1.5em}
ul li ul,ul li ol{margin-left:1.25em;margin-bottom:0}
ul.circle{list-style-type:circle}
ul.disc{list-style-type:disc}
ul.square{list-style-type:square}
ul.circle ul:not([class]),ul.disc ul:not([class]),ul.square ul:not([class]){list-style:inherit}
ol li ul,ol li ol{margin-left:1.25em;margin-bottom:0}
dl dt{margin-bottom:.3125em;font-weight:bold}
dl dd{margin-bottom:1.25em}
blockquote{margin:0 0 1.25em;padding:.5625em 1.25em 0 1.1875em;border-left:1px solid #ddd}
blockquote,blockquote p{line-height:1.6;color:rgba(0,0,0,.85)}
@media screen and (min-width:768px){h1,h2,h3,#toctitle,.sidebarblock>.content>.title,h4,h5,h6{line-height:1.2}
h1{font-size:2.75em}
h2{font-size:2.3125em}
h3,#toctitle,.sidebarblock>.content>.title{font-size:1.6875em}
h4{font-size:1.4375em}}
table{background:#fff;margin-bottom:1.25em;border:1px solid #dedede;word-wrap:normal}
table thead,table tfoot{background:#f7f8f7}
table thead tr th,table thead tr td,table tfoot tr th,table tfoot tr td{padding:.5em .625em .625em;font-size:inherit;color:rgba(0,0,0,.8);text-align:left}
table tr th,table tr td{padding:.5625em .625em;font-size:inherit;color:rgba(0,0,0,.8)}
table tr.even,table tr.alt{background:#f8f8f7}
table thead tr th,table tfoot tr th,table tbody tr td,table tr td,table tfoot tr td{line-height:1.6}
h1,h2,h3,#toctitle,.sidebarblock>.content>.title,h4,h5,h6{line-height:1.2;word-spacing:-.05em}
h1 strong,h2 strong,h3 strong,#toctitle strong,.sidebarblock>.content>.title strong,h4 strong,h5 strong,h6 strong{font-weight:400}
.center{margin-left:auto;margin-right:auto}
.stretch{width:100%}
.clearfix::before,.clearfix::after,.float-group::before,.float-group::after{content:" ";display:table}
.clearfix::after,.float-group::after{clear:both}
:not(pre).nobreak{word-wrap:normal}
:not(pre).nowrap{white-space:nowrap}
:not(pre).pre-wrap{white-space:pre-wrap}
:not(pre):not([class^=L])>code{font-size:.9375em;font-style:normal!important;letter-spacing:0;padding:.1em .5ex;word-spacing:-.15em;background:#f7f7f8;border-radius:4px;line-height:1.45;text-rendering:optimizeSpeed}
pre{color:rgba(0,0,0,.9);font-family:"Droid Sans Mono","DejaVu Sans Mono",monospace;line-height:1.45;text-rendering:optimizeSpeed}
pre code,pre pre{color:inherit;font-size:inherit;line-height:inherit}
pre.nowrap,pre.nowrap pre{white-space:pre;word-wrap:normal}
em em{font-style:normal}
strong strong{font-weight:400}
.keyseq{color:rgba(51,51,51,.8)}
kbd{font-family:"Droid Sans Mono","DejaVu Sans Mono",monospace;display:inline-block;color:rgba(0,0,0,.8);font-size:.65em;line-height:1.45;background:#f7f7f7;border:1px solid #ccc;border-radius:3px;box-shadow:0 1px 0 rgba(0,0,0,.2),inset 0 0 0 .1em #fff;margin:0 .15em;padding:.2em .5em;vertical-align:middle;position:relative;top:-.1em;white-space:nowrap}
.keyseq kbd:first-child{margin-left:0}
.keyseq kbd:last-child{margin-right:0}
.menuseq,.menuref{color:#000}
.menuseq b:not(.caret),.menuref{font-weight:inherit}
.menuseq{word-spacing:-.02em}
.menuseq b.caret{font-size:1.25em;line-height:.8}
.menuseq i.caret{font-weight:bold;text-align:center;width:.45em}
b.button::before,b.button::after{position:relative;top:-1px;font-weight:400}
b.button::before{content:"[";padding:0 3px 0 2px}
b.button::after{content:"]";padding:0 2px 0 3px}
p a>code:hover{color:rgba(0,0,0,.9)}
#header,#content,#footnotes,#footer{width:100%;margin:0 auto;max-width:62.5em;*zoom:1;position:relative;padding-left:.9375em;padding-right:.9375em}
#header::before,#header::after,#content::before,#content::after,#footnotes::before,#footnotes::after,#footer::before,#footer::after{content:" ";display:table}
#header::after,#content::after,#footnotes::after,#footer::after{clear:both}
#content{margin-top:1.25em}
#content::before{content:none}
#header>h1:first-child{color:rgba(0,0,0,.85);margin-top:2.25rem;margin-bottom:0}
#header>h1:first-child+#toc{margin-top:8px;border-top:1px solid #dddddf}
#header>h1:only-child{border-bottom:1px solid #dddddf;padding-bottom:8px}
#header .details{border-bottom:1px solid #dddddf;line-height:1.45;padding-top:.25em;padding-bottom:.25em;padding-left:.25em;color:rgba(0,0,0,.6);display:flex;flex-flow:row wrap}
#header .details span:first-child{margin-left:-.125em}
#header .details span.email a{color:rgba(0,0,0,.85)}
#header .details br{display:none}
#header .details br+span::before{content:"\00a0\2013\00a0"}
#header .details br+span.author::before{content:"\00a0\22c5\00a0";color:rgba(0,0,0,.85)}
#header .details br+span#revremark::before{content:"\00a0|\00a0"}
#header #revnumber{text-transform:capitalize}
#header #revnumber::after{content:"\00a0"}
#content>h1:first-child:not([class]){color:rgba(0,0,0,.85);border-bottom:1px solid #dddddf;padding-bottom:8px;margin-top:0;padding-top:1rem;margin-bottom:1.25rem}
#toc{border-bottom:1px solid #e7e7e9;padding-bottom:.5em}
#toc>ul{margin-left:.125em}
#toc ul.sectlevel0>li>a{font-style:italic}
#toc ul.sectlevel0 ul.sectlevel1{margin:.5em 0}
#toc ul{font-family:"Open Sans","DejaVu Sans",sans-serif;list-style-type:none}
#toc li{line-height:1.3334;margin-top:.3334em}
#toc a{text-decoration:none}
#toc a:active{text-decoration:underline}
#toctitle{color:#7a2518;font-size:1.2em}
@media screen and (min-width:768px){#toctitle{font-size:1.375em}
body.toc2{padding-left:15em;padding-right:0}
body.toc2 #header>h1:nth-last-child(2){border-bottom:1px solid #dddddf;padding-bottom:8px}
#toc.toc2{margin-top:0!important;background:#f8f8f7;position:fixed;width:15em;left:0;top:0;border-right:1px solid #e7e7e9;border-top-width:0!important;border-bottom-width:0!important;z-index:1000;padding:1.25em 1em;height:100%;overflow:auto}
#toc.toc2 #toctitle{margin-top:0;margin-bottom:.8rem;font-size:1.2em}
#toc.toc2>ul{font-size:.9em;margin-bottom:0}
#toc.toc2 ul ul{margin-left:0;padding-left:1em}
#toc.toc2 ul.sectlevel0 ul.sectlevel1{padding-left:0;margin-top:.5em;margin-bottom:.5em}
body.toc2.toc-right{padding-left:0;padding-right:15em}
body.toc2.toc-right #toc.toc2{border-right-width:0;border-left:1px solid #e7e7e9;left:auto;right:0}}
@media screen and (min-width:1280px){body.toc2{padding-left:20em;padding-right:0}
#toc.toc2{width:20em}
#toc.toc2 #toctitle{font-size:1.375em}
#toc.toc2>ul{font-size:.95em}
#toc.toc2 ul ul{padding-left:1.25em}
body.toc2.toc-right{padding-left:0;padding-right:20em}}
#content #toc{border:1px solid #e0e0dc;margin-bottom:1.25em;padding:1.25em;background:#f8f8f7;border-radius:4px}
#content #toc>:first-child{margin-top:0}
#content #toc>:last-child{margin-bottom:0}
#footer{max-width:none;background:rgba(0,0,0,.8);padding:1.25em}
#footer-text{color:hsla(0,0%,100%,.8);line-height:1.44}
#content{margin-bottom:.625em}
.sect1{padding-bottom:.625em}
@media screen and (min-width:768px){#content{margin-bottom:1.25em}
.sect1{padding-bottom:1.25em}}
.sect1:last-child{padding-bottom:0}
.sect1+.sect1{border-top:1px solid #e7e7e9}
#content h1>a.anchor,h2>a.anchor,h3>a.anchor,#toctitle>a.anchor,.sidebarblock>.content>.title>a.anchor,h4>a.anchor,h5>a.anchor,h6>a.anchor{position:absolute;z-index:1001;width:1.5ex;margin-left:-1.5ex;display:block;text-decoration:none!important;visibility:hidden;text-align:center;font-weight:400}
#content h1>a.anchor::before,h2>a.anchor::before,h3>a.anchor::before,#toctitle>a.anchor::before,.sidebarblock>.content>.title>a.anchor::before,h4>a.anchor::before,h5>a.anchor::before,h6>a.anchor::before{content:"\00A7";font-size:.85em;display:block;padding-top:.1em}
#content h1:hover>a.anchor,#content h1>a.anchor:hover,h2:hover>a.anchor,h2>a.anchor:hover,h3:hover>a.anchor,#toctitle:hover>a.anchor,.sidebarblock>.content>.title:hover>a.anchor,h3>a.anchor:hover,#toctitle>a.anchor:hover,.sidebarblock>.content>.title>a.anchor:hover,h4:hover>a.anchor,h4>a.anchor:hover,h5:hover>a.anchor,h5>a.anchor:hover,h6:hover>a.anchor,h6>a.anchor:hover{visibility:visible}
#content h1>a.link,h2>a.link,h3>a.link,#toctitle>a.link,.sidebarblock>.content>.title>a.link,h4>a.link,h5>a.link,h6>a.link{color:#ba3925;text-decoration:none}
#content h1>a.link:hover,h2>a.link:hover,h3>a.link:hover,#toctitle>a.link:hover,.sidebarblock>.content>.title>a.link:hover,h4>a.link:hover,h5>a.link:hover,h6>a.link:hover{color:#a53221}
details,.audioblock,.imageblock,.literalblock,.listingblock,.stemblock,.videoblock{margin-bottom:1.25em}
details{margin-left:1.25rem}
details>summary{cursor:pointer;display:block;position:relative;line-height:1.6;margin-bottom:.625rem;outline:none;-webkit-tap-highlight-color:transparent}
details>summary::-webkit-details-marker{display:none}
details>summary::before{content:"";border:solid transparent;border-left:solid;border-width:.3em 0 .3em .5em;position:absolute;top:.5em;left:-1.25rem;transform:translateX(15%)}
details[open]>summary::before{border:solid transparent;border-top:solid;border-width:.5em .3em 0;transform:translateY(15%)}
details>summary::after{content:"";width:1.25rem;height:1em;position:absolute;top:.3em;left:-1.25rem}
.admonitionblock td.content>.title,.audioblock>.title,.exampleblock>.title,.imageblock>.title,.listingblock>.title,.literalblock>.title,.stemblock>.title,.openblock>.title,.paragraph>.title,.quoteblock>.title,table.tableblock>.title,.verseblock>.title,.videoblock>.title,.dlist>.title,.olist>.title,.ulist>.title,.qlist>.title,.hdlist>.title{text-rendering:optimizeLegibility;text-align:left;font-family:"Noto Serif","DejaVu Serif",serif;font-size:1rem;font-style:italic}
table.tableblock.fit-content>caption.title{white-space:nowrap;width:0}
.paragraph.lead>p,#preamble>.sectionbody>[class=paragraph]:first-of-type p{font-size:1.21875em;line-height:1.6;color:rgba(0,0,0,.85)}
.admonitionblock>table{border-collapse:separate;border:0;background:none;width:100%}
.admonitionblock>table td.icon{text-align:center;width:80px}
.admonitionblock>table td.icon img{max-width:none}
.admonitionblock>table td.icon .title{font-weight:bold;font-family:"Open Sans","DejaVu Sans",sans-serif;text-transform:uppercase}
.admonitionblock>table td.content{padding-left:1.125em;padding-right:1.25em;border-left:1px solid #dddddf;color:rgba(0,0,0,.6);word-wrap:anywhere}
.admonitionblock>table td.content>:last-child>:last-child{margin-bottom:0}
.exampleblock>.content{border:1px solid #e6e6e6;margin-bottom:1.25em;padding:1.25em;background:#fff;border-radius:4px}
.sidebarblock{border:1px solid #dbdbd6;margin-bottom:1.25em;padding:1.25em;background:#f3f3f2;border-radius:4px}
.sidebarblock>.content>.title{color:#7a2518;margin-top:0;text-align:center}
.exampleblock>.content>:first-child,.sidebarblock>.content>:first-child{margin-top:0}
.exampleblock>.content>:last-child,.exampleblock>.content>:last-child>:last-child,.exampleblock>.content .olist>ol>li:last-child>:last-child,.exampleblock>.content .ulist>ul>li:last-child>:last-child,.exampleblock>.content .qlist>ol>li:last-child>:last-child,.sidebarblock>.content>:last-child,.sidebarblock>.content>:last-child>:last-child,.sidebarblock>.content .olist>ol>li:last-child>:last-child,.sidebarblock>.content .ulist>ul>li:last-child>:last-child,.sidebarblock>.content .qlist>ol>li:last-child>:last-child{margin-bottom:0}
.literalblock pre,.listingblock>.content>pre{border-radius:4px;overflow-x:auto;padding:1em;font-size:.8125em}
@media screen and (min-width:768px){.literalblock pre,.listingblock>.content>pre{font-size:.90625em}}
@media screen and (min-width:1280px){.literalblock pre,.listingblock>.content>pre{font-size:1em}}
.literalblock pre,.listingblock>.content>pre:not(.highlight),.listingblock>.content>pre[class=highlight],.listingblock>.content>pre[class^="highlight "]{background:#f7f7f8}
.literalblock.output pre{color:#f7f7f8;background:rgba(0,0,0,.9)}
.listingblock>.content{position:relative}
.listingblock pre>code{display:block}
.listingblock code[data-lang]::before{display:none;content:attr(data-lang);position:absolute;font-size:.75em;top:.425rem;right:.5rem;line-height:1;text-transform:uppercase;color:inherit;opacity:.5}
.listingblock:hover code[data-lang]::before{display:block}
.listingblock.terminal pre .command::before{content:attr(data-prompt);padding-right:.5em;color:inherit;opacity:.5}
.listingblock.terminal pre .command:not([data-prompt])::before{content:"$"}
.listingblock pre.highlightjs{padding:0}
.listingblock pre.highlightjs>code{padding:1em;border-radius:4px}
.listingblock pre.prettyprint{border-width:0}
.prettyprint{background:#f7f7f8}
pre.prettyprint .linenums{line-height:1.45;margin-left:2em}
pre.prettyprint li{background:none;list-style-type:inherit;padding-left:0}
pre.prettyprint li code[data-lang]::before{opacity:1}
pre.prettyprint li:not(:first-child) code[data-lang]::before{display:none}
table.linenotable{border-collapse:separate;border:0;margin-bottom:0;background:none}
table.linenotable td[class]{color:inherit;vertical-align:top;padding:0;line-height:inherit;white-space:normal}
table.linenotable td.code{padding-left:.75em}
table.linenotable td.linenos,pre.pygments .linenos{border-right:1px solid;opacity:.35;padding-right:.5em;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}
pre.pygments span.linenos{display:inline-block;margin-right:.75em}
.quoteblock{margin:0 1em 1.25em 1.5em;display:table}
.quoteblock:not(.excerpt)>.title{margin-left:-1.5em;margin-bottom:.75em}
.quoteblock blockquote,.quoteblock p{color:rgba(0,0,0,.85);font-size:1.15rem;line-height:1.75;word-spacing:.1em;letter-spacing:0;font-style:italic;text-align:justify}
.quoteblock blockquote{margin:0;padding:0;border:0}
.quoteblock blockquote::before{content:"\201c";float:left;font-size:2.75em;font-weight:bold;line-height:.6em;margin-left:-.6em;color:#7a2518;text-shadow:0 1px 2px rgba(0,0,0,.1)}
.quoteblock blockquote>.paragraph:last-child p{margin-bottom:0}
.quoteblock .attribution{margin-top:.75em;margin-right:.5ex;text-align:right}
.verseblock{margin:0 1em 1.25em}
.verseblock pre{font-family:"Open Sans","DejaVu Sans",sans-serif;font-size:1.15rem;color:rgba(0,0,0,.85);font-weight:300;text-rendering:optimizeLegibility}
.verseblock pre strong{font-weight:400}
.verseblock .attribution{margin-top:1.25rem;margin-left:.5ex}
.quoteblock .attribution,.verseblock .attribution{font-size:.9375em;line-height:1.45;font-style:italic}
.quoteblock .attribution br,.verseblock .attribution br{display:none}
.quoteblock .attribution cite,.verseblock .attribution cite{display:block;letter-spacing:-.025em;color:rgba(0,0,0,.6)}
.quoteblock.abstract blockquote::before,.quoteblock.excerpt blockquote::before,.quoteblock .quoteblock blockquote::before{display:none}
.quoteblock.abstract blockquote,.quoteblock.abstract p,.quoteblock.excerpt blockquote,.quoteblock.excerpt p,.quoteblock .quoteblock blockquote,.quoteblock .quoteblock p{line-height:1.6;word-spacing:0}
.quoteblock.abstract{margin:0 1em 1.25em;display:block}
.quoteblock.abstract>.title{margin:0 0 .375em;font-size:1.15em;text-align:center}
.quoteblock.excerpt>blockquote,.quoteblock .quoteblock{padding:0 0 .25em 1em;border-left:.25em solid #dddddf}
.quoteblock.excerpt,.quoteblock .quoteblock{margin-left:0}
.quoteblock.excerpt blockquote,.quoteblock.excerpt p,.quoteblock .quoteblock blockquote,.quoteblock .quoteblock p{color:inherit;font-size:1.0625rem}
.quoteblock.excerpt .attribution,.quoteblock .quoteblock .attribution{color:inherit;font-size:.85rem;text-align:left;margin-right:0}
p.tableblock:last-child{margin-bottom:0}
td.tableblock>.content{margin-bottom:1.25em;word-wrap:anywhere}
td.tableblock>.content>:last-child{margin-bottom:-1.25em}
table.tableblock,th.tableblock,td.tableblock{border:0 solid #dedede}
table.grid-all>*>tr>*{border-width:1px}
table.grid-cols>*>tr>*{border-width:0 1px}
table.grid-rows>*>tr>*{border-width:1px 0}
table.frame-all{border-width:1px}
table.frame-ends{border-width:1px 0}
table.frame-sides{border-width:0 1px}
table.frame-none>colgroup+*>:first-child>*,table.frame-sides>colgroup+*>:first-child>*{border-top-width:0}
table.frame-none>:last-child>:last-child>*,table.frame-sides>:last-child>:last-child>*{border-bottom-width:0}
table.frame-none>*>tr>:first-child,table.frame-ends>*>tr>:first-child{border-left-width:0}
table.frame-none>*>tr>:last-child,table.frame-ends>*>tr>:last-child{border-right-width:0}
table.stripes-all>*>tr,table.stripes-odd>*>tr:nth-of-type(odd),table.stripes-even>*>tr:nth-of-type(even),table.stripes-hover>*>tr:hover{background:#f8f8f7}
th.halign-left,td.halign-left{text-align:left}
th.halign-right,td.halign-right{text-align:right}
th.halign-center,td.halign-center{text-align:center}
th.valign-top,td.valign-top{vertical-align:top}
th.valign-bottom,td.valign-bottom{vertical-align:bottom}
th.valign-middle,td.valign-middle{vertical-align:middle}
table thead th,table tfoot th{font-weight:bold}
tbody tr th{background:#f7f8f7}
tbody tr th,tbody tr th p,tfoot tr th,tfoot tr th p{color:rgba(0,0,0,.8);font-weight:bold}
p.tableblock>code:only-child{background:none;padding:0}
p.tableblock{font-size:1em}
ol{margin-left:1.75em}
ul li ol{margin-left:1.5em}
dl dd{margin-left:1.125em}
dl dd:last-child,dl dd:last-child>:last-child{margin-bottom:0}
li p,ul dd,ol dd,.olist .olist,.ulist .ulist,.ulist .olist,.olist .ulist{margin-bottom:.625em}
ul.checklist,ul.none,ol.none,ul.no-bullet,ol.no-bullet,ol.unnumbered,ul.unstyled,ol.unstyled{list-style-type:none}
ul.no-bullet,ol.no-bullet,ol.unnumbered{margin-left:.625em}
ul.unstyled,ol.unstyled{margin-left:0}
li>p:empty:only-child::before{content:"";display:inline-block}
ul.checklist>li>p:first-child{margin-left:-1em}
ul.checklist>li>p:first-child>.fa-square-o:first-child,ul.checklist>li>p:first-child>.fa-check-square-o:first-child{width:1.25em;font-size:.8em;position:relative;bottom:.125em}
ul.checklist>li>p:first-child>input[type=checkbox]:first-child{margin-right:.25em}
ul.inline{display:flex;flex-flow:row wrap;list-style:none;margin:0 0 .625em -1.25em}
ul.inline>li{margin-left:1.25em}
.unstyled dl dt{font-weight:400;font-style:normal}
ol.arabic{list-style-type:decimal}
ol.decimal{list-style-type:decimal-leading-zero}
ol.loweralpha{list-style-type:lower-alpha}
ol.upperalpha{list-style-type:upper-alpha}
ol.lowerroman{list-style-type:lower-roman}
ol.upperroman{list-style-type:upper-roman}
ol.lowergreek{list-style-type:lower-greek}
.hdlist>table,.colist>table{border:0;background:none}
.hdlist>table>tbody>tr,.colist>table>tbody>tr{background:none}
td.hdlist1,td.hdlist2{vertical-align:top;padding:0 .625em}
td.hdlist1{font-weight:bold;padding-bottom:1.25em}
td.hdlist2{word-wrap:anywhere}
.literalblock+.colist,.listingblock+.colist{margin-top:-.5em}
.colist td:not([class]):first-child{padding:.4em .75em 0;line-height:1;vertical-align:top}
.colist td:not([class]):first-child img{max-width:none}
.colist td:not([class]):last-child{padding:.25em 0}
.thumb,.th{line-height:0;display:inline-block;border:4px solid #fff;box-shadow:0 0 0 1px #ddd}
.imageblock.left{margin:.25em .625em 1.25em 0}
.imageblock.right{margin:.25em 0 1.25em .625em}
.imageblock>.title{margin-bottom:0}
.imageblock.thumb,.imageblock.th{border-width:6px}
.imageblock.thumb>.title,.imageblock.th>.title{padding:0 .125em}
.image.left,.image.right{margin-top:.25em;margin-bottom:.25em;display:inline-block;line-height:0}
.image.left{margin-right:.625em}
.image.right{margin-left:.625em}
a.image{text-decoration:none;display:inline-block}
a.image object{pointer-events:none}
sup.footnote,sup.footnoteref{font-size:.875em;position:static;vertical-align:super}
sup.footnote a,sup.footnoteref a{text-decoration:none}
sup.footnote a:active,sup.footnoteref a:active,#footnotes .footnote a:first-of-type:active{text-decoration:underline}
#footnotes{padding-top:.75em;padding-bottom:.75em;margin-bottom:.625em}
#footnotes hr{width:20%;min-width:6.25em;margin:-.25em 0 .75em;border-width:1px 0 0}
#footnotes .footnote{padding:0 .375em 0 .225em;line-height:1.3334;font-size:.875em;margin-left:1.2em;margin-bottom:.2em}
#footnotes .footnote a:first-of-type{font-weight:bold;text-decoration:none;margin-left:-1.05em}
#footnotes .footnote:last-of-type{margin-bottom:0}
#content #footnotes{margin-top:-.625em;margin-bottom:0;padding:.75em 0}
div.unbreakable{page-break-inside:avoid}
.big{font-size:larger}
.small{font-size:smaller}
.underline{text-decoration:underline}
.overline{text-decoration:overline}
.line-through{text-decoration:line-through}
.aqua{color:#00bfbf}
.aqua-background{background:#00fafa}
.black{color:#000}
.black-background{background:#000}
.blue{color:#0000bf}
.blue-background{background:#0000fa}
.fuchsia{color:#bf00bf}
.fuchsia-background{background:#fa00fa}
.gray{color:#606060}
.gray-background{background:#7d7d7d}
.green{color:#006000}
.green-background{background:#007d00}
.lime{color:#00bf00}
.lime-background{background:#00fa00}
.maroon{color:#600000}
.maroon-background{background:#7d0000}
.navy{color:#000060}
.navy-background{background:#00007d}
.olive{color:#606000}
.olive-background{background:#7d7d00}
.purple{color:#600060}
.purple-background{background:#7d007d}
.red{color:#bf0000}
.red-background{background:#fa0000}
.silver{color:#909090}
.silver-background{background:#bcbcbc}
.teal{color:#006060}
.teal-background{background:#007d7d}
.white{color:#bfbfbf}
.white-background{background:#fafafa}
.yellow{color:#bfbf00}
.yellow-background{background:#fafa00}
span.icon>.fa{cursor:default}
a span.icon>.fa{cursor:inherit}
.admonitionblock td.icon [class^="fa icon-"]{font-size:2.5em;text-shadow:1px 1px 2px rgba(0,0,0,.5);cursor:default}
.admonitionblock td.icon .icon-note::before{content:"\f05a";color:#19407c}
.admonitionblock td.icon .icon-tip::before{content:"\f0eb";text-shadow:1px 1px 2px rgba(155,155,0,.8);color:#111}
.admonitionblock td.icon .icon-warning::before{content:"\f071";color:#bf6900}
.admonitionblock td.icon .icon-caution::before{content:"\f06d";color:#bf3400}
.admonitionblock td.icon .icon-important::before{content:"\f06a";color:#bf0000}
.conum[data-value]{display:inline-block;color:#fff!important;background:rgba(0,0,0,.8);border-radius:50%;text-align:center;font-size:.75em;width:1.67em;height:1.67em;line-height:1.67em;font-family:"Open Sans","DejaVu Sans",sans-serif;font-style:normal;font-weight:bold}
.conum[data-value] *{color:#fff!important}
.conum[data-value]+b{display:none}
.conum[data-value]::after{content:attr(data-value)}
pre .conum[data-value]{position:relative;top:-.125em}
b.conum *{color:inherit!important}
.conum:not([data-value]):empty{display:none}
dt,th.tableblock,td.content,div.footnote{text-rendering:optimizeLegibility}
h1,h2,p,td.content,span.alt,summary{letter-spacing:-.01em}
p strong,td.content strong,div.footnote strong{letter-spacing:-.005em}
p,blockquote,dt,td.content,td.hdlist1,span.alt,summary{font-size:1.0625rem}
p{margin-bottom:1.25rem}
.sidebarblock p,.sidebarblock dt,.sidebarblock td.content,p.tableblock{font-size:1em}
.exampleblock>.content{background:#fffef7;border-color:#e0e0dc;box-shadow:0 1px 4px #e0e0dc}
.print-only{display:none!important}
@page{margin:1.25cm .75cm}
@media print{*{box-shadow:none!important;text-shadow:none!important}
html{font-size:80%}
a{color:inherit!important;text-decoration:underline!important}
a.bare,a[href^="#"],a[href^="mailto:"]{text-decoration:none!important}
a[href^="http:"]:not(.bare)::after,a[href^="https:"]:not(.bare)::after{content:"(" attr(href) ")";display:inline-block;font-size:.875em;padding-left:.25em}
abbr[title]{border-bottom:1px dotted}
abbr[title]::after{content:" (" attr(title) ")"}
pre,blockquote,tr,img,object,svg{page-break-inside:avoid}
thead{display:table-header-group}
svg{max-width:100%}
p,blockquote,dt,td.content{font-size:1em;orphans:3;widows:3}
h2,h3,#toctitle,.sidebarblock>.content>.title{page-break-after:avoid}
#header,#content,#footnotes,#footer{max-width:none}
#toc,.sidebarblock,.exampleblock>.content{background:none!important}
#toc{border-bottom:1px solid #dddddf!important;padding-bottom:0!important}
body.book #header{text-align:center}
body.book #header>h1:first-child{border:0!important;margin:2.5em 0 1em}
body.book #header .details{border:0!important;display:block;padding:0!important}
body.book #header .details span:first-child{margin-left:0!important}
body.book #header .details br{display:block}
body.book #header .details br+span::before{content:none!important}
body.book #toc{border:0!important;text-align:left!important;padding:0!important;margin:0!important}
body.book #toc,body.book #preamble,body.book h1.sect0,body.book .sect1>h2{page-break-before:always}
.listingblock code[data-lang]::before{display:block}
#footer{padding:0 .9375em}
.hide-on-print{display:none!important}
.print-only{display:block!important}
.hide-for-print{display:none!important}
.show-for-print{display:inherit!important}}
@media amzn-kf8,print{#header>h1:first-child{margin-top:1.25rem}
.sect1{padding:0!important}
.sect1+.sect1{border:0}
#footer{background:none}
#footer-text{color:rgba(0,0,0,.6);font-size:.9em}}
@media amzn-kf8{#header,#content,#footnotes,#footer{padding:0}}
</style>
<style>
pre>code {
   display: inline;
}
</style>
</head>
<body class="manpage">
<div id="header">
<h1>git-diff(1) Manual Page</h1>
<h2 id="_name">NAME</h2>
<div class="sectionbody">
<p>git-diff - Show changes between commits, commit and working tree, etc</p>
</div>
</div>
<div id="content">
<div class="sect1">
<h2 id="_synopsis">SYNOPSIS</h2>
<div class="sectionbody">
<div class="verseblock">
<pre class="content"><code>git</code> <code>diff</code> [<em>&lt;options&gt;</em>] [<em>&lt;commit&gt;</em>] [<code>--</code>] [<em>&lt;path&gt;</em>&#8230;&#8203;]
<code>git</code> <code>diff</code> [<em>&lt;options&gt;</em>] <code>--cached</code> [<code>--merge-base</code>] [<em>&lt;commit&gt;</em>] [<code>--</code>] [<em>&lt;path&gt;</em>&#8230;&#8203;]
<code>git</code> <code>diff</code> [<em>&lt;options&gt;</em>] [<code>--merge-base</code>] <em>&lt;commit&gt;</em> [<em>&lt;commit&gt;</em>&#8230;&#8203;] <em>&lt;commit&gt;</em> [<code>--</code>] [<em>&lt;path&gt;</em>&#8230;&#8203;]
<code>git</code> <code>diff</code> [<em>&lt;options&gt;</em>] <em>&lt;commit&gt;</em><code>...</code><em>&lt;commit&gt;</em> [<code>--</code>] [<em>&lt;path&gt;</em>&#8230;&#8203;]
<code>git</code> <code>diff</code> [<em>&lt;options&gt;</em>] <em>&lt;blob&gt;</em> <em>&lt;blob&gt;</em>
<code>git</code> <code>diff</code> [<em>&lt;options&gt;</em>] <code>--no-index</code> [<code>--</code>] <em>&lt;path&gt;</em> <em>&lt;path&gt;</em> [<em>&lt;pathspec&gt;</em>&#8230;&#8203;]</pre>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_description">DESCRIPTION</h2>
<div class="sectionbody">
<div class="paragraph">
<p>Show changes between the working tree and the index or a tree, changes
between the index and a tree, changes between two trees, changes resulting
from a merge, changes between two blob objects, or changes between two
files on disk.</p>
</div>
<div class="dlist">
<dl>
<dt class="hdlist1"><code>git</code> <code>diff</code> [<em>&lt;options&gt;</em>] [<code>--</code>] [<em>&lt;path&gt;</em>...]</dt>
<dd>
<p>This form is to view the changes you made relative to
the index (staging area for the next commit).  In other
words, the differences are what you <em>could</em> tell Git to
further add to the index but you still haven&#8217;t.  You can
stage these changes by using <a href="git-add.html">git-add(1)</a>.</p>
</dd>
<dt class="hdlist1"><code>git</code> <code>diff</code> [<em>&lt;options&gt;</em>] <code>--no-index</code> [<code>--</code>] <em>&lt;path&gt;</em> <em>&lt;path&gt;</em> [<em>&lt;pathspec&gt;</em>...]</dt>
<dd>
<p>This form is to compare the given two paths on the
filesystem.  You can omit the <code>--no-index</code> option when
running the command in a working tree controlled by Git and
at least one of the paths points outside the working tree,
or when running the command outside a working tree
controlled by Git. This form implies <code>--exit-code</code>. If both
paths point to directories, additional pathspecs may be
provided. These will limit the files included in the
difference. All such pathspecs must be relative as they
apply to both sides of the diff.</p>
</dd>
<dt class="hdlist1"><code>git</code> <code>diff</code> [<em>&lt;options&gt;</em>] <code>--cached</code> [<code>--merge-base</code>] [<em>&lt;commit&gt;</em>] [<code>--</code>] [<em>&lt;path&gt;</em>...]</dt>
<dd>
<p>This form is to view the changes you staged for the next
commit relative to the named <em>&lt;commit&gt;</em>.  Typically you
would want comparison with the latest commit, so if you
do not give <em>&lt;commit&gt;</em>, it defaults to <code>HEAD</code>.
If <code>HEAD</code> does not exist (e.g. unborn branches) and
<em>&lt;commit&gt;</em> is not given, it shows all staged changes.
<code>--staged</code> is a synonym of <code>--cached</code>.</p>
<div class="paragraph">
<p>If <code>--merge-base</code> is given, instead of using <em>&lt;commit&gt;</em>, use the merge base
of <em>&lt;commit&gt;</em> and <code>HEAD</code>.  <code>git</code> <code>diff</code> <code>--cached</code> <code>--merge-base</code> <code>A</code> is equivalent to
<code>git</code> <code>diff</code> <code>--cached</code> <code>$</code>(<code>git</code> <code>merge-base</code> <code>A</code> <code>HEAD</code>).</p>
</div>
</dd>
<dt class="hdlist1"><code>git</code> <code>diff</code> [<em>&lt;options&gt;</em>] [<code>--merge-base</code>] <em>&lt;commit&gt;</em> [<code>--</code>] [<em>&lt;path&gt;</em>...]</dt>
<dd>
<p>This form is to view the changes you have in your
working tree relative to the named <em>&lt;commit&gt;</em>.  You can
use <code>HEAD</code> to compare it with the latest commit, or a
branch name to compare with the tip of a different
branch.</p>
<div class="paragraph">
<p>If <code>--merge-base</code> is given, instead of using <em>&lt;commit&gt;</em>, use the merge base
of <em>&lt;commit&gt;</em> and <code>HEAD</code>.  <code>git</code> <code>diff</code> <code>--merge-base</code> <code>A</code> is equivalent to
<code>git</code> <code>diff</code> <code>$</code>(<code>git</code> <code>merge-base</code> <code>A</code> <code>HEAD</code>).</p>
</div>
</dd>
<dt class="hdlist1"><code>git</code> <code>diff</code> [<em>&lt;options&gt;</em>] [<code>--merge-base</code>] <em>&lt;commit&gt;</em> <em>&lt;commit&gt;</em> [<code>--</code>] [<em>&lt;path&gt;</em>...]</dt>
<dd>
<p>This is to view the changes between two arbitrary
<em>&lt;commit&gt;</em>.</p>
<div class="paragraph">
<p>If <code>--merge-base</code> is given, use the merge base of the two commits for the
"before" side.  <code>git</code> <code>diff</code> <code>--merge-base</code> <code>A</code> <code>B</code> is equivalent to
<code>git</code> <code>diff</code> <code>$</code>(<code>git</code> <code>merge-base</code> <code>A</code> <code>B</code>) <code>B</code>.</p>
</div>
</dd>
<dt class="hdlist1"><code>git</code> <code>diff</code> [<em>&lt;options&gt;</em>] <em>&lt;commit&gt;</em> <em>&lt;commit&gt;</em><code>...</code><em>&lt;commit&gt;</em> [<code>--</code>] [<em>&lt;path&gt;</em>...]</dt>
<dd>
<p>This form is to view the results of a merge commit.  The first
listed <em>&lt;commit&gt;</em> must be the merge itself; the remaining two or
more commits should be its parents.  Convenient ways to produce
the desired set of revisions are to use the suffixes <code>@</code> and
<code>^</code>!.  If <code>A</code> is a merge commit, then <code>git</code> <code>diff</code> <code>A</code> <code>A^@</code>,
<code>git</code> <code>diff</code> <code>A^</code>! and <code>git</code> <code>show</code> <code>A</code> all give the same combined diff.</p>
</dd>
<dt class="hdlist1"><code>git</code> <code>diff</code> [<em>&lt;options&gt;</em>] <em>&lt;commit&gt;</em><code>..</code><em>&lt;commit&gt;</em> [<code>--</code>] [<em>&lt;path&gt;</em>...]</dt>
<dd>
<p>This is synonymous to the earlier form (without the <code>..</code>) for
viewing the changes between two arbitrary <em>&lt;commit&gt;</em>.  If <em>&lt;commit&gt;</em> on
one side is omitted, it will have the same effect as
using <code>HEAD</code> instead.</p>
</dd>
<dt class="hdlist1"><code>git</code> <code>diff</code> [<em>&lt;options&gt;</em>] <em>&lt;commit&gt;</em><code>...</code><em>&lt;commit&gt;</em> [<code>--</code>] [<em>&lt;path&gt;</em>...]</dt>
<dd>
<p>This form is to view the changes on the branch containing
and up to the second <em>&lt;commit&gt;</em>, starting at a common ancestor
of both <em>&lt;commit&gt;</em>.  <code>git</code> <code>diff</code> <code>A</code><code>...</code><code>B</code> is equivalent to
<code>git</code> <code>diff</code> <code>$</code>(<code>git</code> <code>merge-base</code> <code>A</code> <code>B</code>) <code>B</code>.  You can omit any one
of <em>&lt;commit&gt;</em>, which has the same effect as using <code>HEAD</code> instead.</p>
</dd>
</dl>
</div>
<div class="paragraph">
<p>Just in case you are doing something exotic, it should be
noted that all of the <em>&lt;commit&gt;</em> in the above description, except
in the <code>--merge-base</code> case and in the last two forms that use <code>..</code>
notations, can be any <em>&lt;tree&gt;</em>. A tree of interest is the one pointed to
by the ref named <code>AUTO_MERGE</code>, which is written by the <code>ort</code> merge
strategy upon hitting merge conflicts (see <a href="git-merge.html">git-merge(1)</a>).
Comparing the working tree with <code>AUTO_MERGE</code> shows changes you&#8217;ve made
so far to resolve textual conflicts (see the examples below).</p>
</div>
<div class="paragraph">
<p>For a more complete list of ways to spell <em>&lt;commit&gt;</em>, see
"SPECIFYING REVISIONS" section in <a href="gitrevisions.html">gitrevisions(7)</a>.
However, <code>diff</code> is about comparing two <em>endpoints</em>, not ranges,
and the range notations (<em>&lt;commit&gt;</em><code>..</code><em>&lt;commit&gt;</em> and <em>&lt;commit&gt;</em><code>...</code><em>&lt;commit&gt;</em>)
do not mean a range as defined in the
"SPECIFYING RANGES" section in <a href="gitrevisions.html">gitrevisions(7)</a>.</p>
</div>
<div class="dlist">
<dl>
<dt class="hdlist1"><code>git</code> <code>diff</code> [<em>&lt;options&gt;</em>] <em>&lt;blob&gt;</em> <em>&lt;blob&gt;</em></dt>
<dd>
<p>This form is to view the differences between the raw
contents of two blob objects.</p>
</dd>
</dl>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_options">OPTIONS</h2>
<div class="sectionbody">
<div class="dlist">
<dl>
<dt class="hdlist1"><code>-p</code></dt>
<dt class="hdlist1"><code>-u</code></dt>
<dt class="hdlist1"><code>--patch</code></dt>
<dd>
<p>Generate patch (see <a href="#generate_patch_text_with_p">Generating patch text with -p</a>).
This is the default.</p>
</dd>
<dt class="hdlist1"><code>-s</code></dt>
<dt class="hdlist1"><code>--no-patch</code></dt>
<dd>
<p>Suppress all output from the diff machinery.  Useful for
commands like <code>git</code> <code>show</code> that show the patch by default to
squelch their output, or to cancel the effect of options like
<code>--patch</code>, <code>--stat</code> earlier on the command line in an alias.</p>
</dd>
<dt class="hdlist1"><code>-U</code><em>&lt;n&gt;</em></dt>
<dt class="hdlist1"><code>--unified=</code><em>&lt;n&gt;</em></dt>
<dd>
<p>Generate diffs with <em>&lt;n&gt;</em> lines of context. The number of context
lines defaults to <code>diff.context</code> or 3 if the configuration variable
is unset. (<code>-U</code> without <em>&lt;n&gt;</em> is silently accepted as a synonym for
<code>-p</code> due to a historical accident).
Implies <code>--patch</code>.</p>
</dd>
<dt class="hdlist1"><code>--output=</code><em>&lt;file&gt;</em></dt>
<dd>
<p>Output to a specific file instead of stdout.</p>
</dd>
<dt class="hdlist1"><code>--output-indicator-new=</code><em>&lt;char&gt;</em></dt>
<dt class="hdlist1"><code>--output-indicator-old=</code><em>&lt;char&gt;</em></dt>
<dt class="hdlist1"><code>--output-indicator-context=</code><em>&lt;char&gt;</em></dt>
<dd>
<p>Specify the character used to indicate new, old or context
lines in the generated patch. Normally they are <code>+</code>, <code>-</code> and
' ' respectively.</p>
</dd>
<dt class="hdlist1"><code>--raw</code></dt>
<dd>
<p>Generate the diff in raw format.</p>
</dd>
<dt class="hdlist1"><code>--patch-with-raw</code></dt>
<dd>
<p>Synonym for <code>-p</code> <code>--raw</code>.</p>
</dd>
<dt class="hdlist1"><code>--indent-heuristic</code></dt>
<dd>
<p>Enable the heuristic that shifts diff hunk boundaries to make patches
easier to read. This is the default.</p>
</dd>
<dt class="hdlist1"><code>--no-indent-heuristic</code></dt>
<dd>
<p>Disable the indent heuristic.</p>
</dd>
<dt class="hdlist1"><code>--minimal</code></dt>
<dd>
<p>Spend extra time to make sure the smallest possible
diff is produced.</p>
</dd>
<dt class="hdlist1"><code>--patience</code></dt>
<dd>
<p>Generate a diff using the "patience diff" algorithm.</p>
</dd>
<dt class="hdlist1"><code>--histogram</code></dt>
<dd>
<p>Generate a diff using the "histogram diff" algorithm.</p>
</dd>
<dt class="hdlist1"><code>--anchored=</code><em>&lt;text&gt;</em></dt>
<dd>
<p>Generate a diff using the "anchored diff" algorithm.</p>
<div class="paragraph">
<p>This option may be specified more than once.</p>
</div>
<div class="paragraph">
<p>If a line exists in both the source and destination, exists only once,
and starts with <em>&lt;text&gt;</em>, this algorithm attempts to prevent it from
appearing as a deletion or addition in the output. It uses the "patience
diff" algorithm internally.</p>
</div>
</dd>
<dt class="hdlist1"><code>--diff-algorithm=</code>(<code>patience</code>|<code>minimal</code>|<code>histogram</code>|<code>myers</code>)</dt>
<dd>
<p>Choose a diff algorithm. The variants are as follows:</p>
<div class="openblock">
<div class="content">
<div class="dlist">
<dl>
<dt class="hdlist1"><code>default</code></dt>
<dt class="hdlist1"><code>myers</code></dt>
<dd>
<p>The basic greedy diff algorithm. Currently, this is the default.</p>
</dd>
<dt class="hdlist1"><code>minimal</code></dt>
<dd>
<p>Spend extra time to make sure the smallest possible diff is
produced.</p>
</dd>
<dt class="hdlist1"><code>patience</code></dt>
<dd>
<p>Use "patience diff" algorithm when generating patches.</p>
</dd>
<dt class="hdlist1"><code>histogram</code></dt>
<dd>
<p>This algorithm extends the patience algorithm to "support
low-occurrence common elements".</p>
</dd>
</dl>
</div>
</div>
</div>
<div class="paragraph">
<p>For instance, if you configured the <code>diff.algorithm</code> variable to a
non-default value and want to use the default one, then you
have to use <code>--diff-algorithm=default</code> option.</p>
</div>
</dd>
<dt class="hdlist1"><code>--stat</code>[<code>=</code><em>&lt;width&gt;</em>[<code>,</code><em>&lt;name-width&gt;</em>[<code>,</code><em>&lt;count&gt;</em>]]]</dt>
<dd>
<p>Generate a diffstat. By default, as much space as necessary
will be used for the filename part, and the rest for the graph
part. Maximum width defaults to terminal width, or 80 columns
if not connected to a terminal, and can be overridden by
<em>&lt;width&gt;</em>. The width of the filename part can be limited by
giving another width <em>&lt;name-width&gt;</em> after a comma or by setting
<code>diff.statNameWidth=</code><em>&lt;name-width&gt;</em>. The width of the graph part can be
limited by using <code>--stat-graph-width=</code><em>&lt;graph-width&gt;</em> or by setting
<code>diff.statGraphWidth=</code><em>&lt;graph-width&gt;</em>. Using <code>--stat</code> or
<code>--stat-graph-width</code> affects all commands generating a stat graph,
while setting <code>diff.statNameWidth</code> or <code>diff.statGraphWidth</code>
does not affect <code>git</code> <code>format-patch</code>.
By giving a third parameter <em>&lt;count&gt;</em>, you can limit the output to
the first <em>&lt;count&gt;</em> lines, followed by <code>...</code> if there are more.</p>
<div class="paragraph">
<p>These parameters can also be set individually with <code>--stat-width=</code><em>&lt;width&gt;</em>,
<code>--stat-name-width=</code><em>&lt;name-width&gt;</em> and <code>--stat-count=</code><em>&lt;count&gt;</em>.</p>
</div>
</dd>
<dt class="hdlist1"><code>--compact-summary</code></dt>
<dd>
<p>Output a condensed summary of extended header information such
as file creations or deletions ("new" or "gone", optionally <code>+l</code>
if it&#8217;s a symlink) and mode changes (<code>+x</code> or <code>-x</code> for adding
or removing executable bit respectively) in diffstat. The
information is put between the filename part and the graph
part. Implies <code>--stat</code>.</p>
</dd>
<dt class="hdlist1"><code>--numstat</code></dt>
<dd>
<p>Similar to <code>--stat</code>, but shows number of added and
deleted lines in decimal notation and pathname without
abbreviation, to make it more machine friendly.  For
binary files, outputs two <code>-</code> instead of saying
<code>0</code> <code>0</code>.</p>
</dd>
<dt class="hdlist1"><code>--shortstat</code></dt>
<dd>
<p>Output only the last line of the <code>--stat</code> format containing total
number of modified files, as well as number of added and deleted
lines.</p>
</dd>
<dt class="hdlist1"><code>-X</code> [<em>&lt;param&gt;</em><code>,..</code>.]</dt>
<dt class="hdlist1"><code>--dirstat</code>[<code>=</code><em>&lt;param&gt;</em><code>,..</code>.]</dt>
<dd>
<p>Output the distribution of relative amount of changes for each
sub-directory. The behavior of <code>--dirstat</code> can be customized by
passing it a comma separated list of parameters.
The defaults are controlled by the <code>diff.dirstat</code> configuration
variable (see <a href="git-config.html">git-config(1)</a>).
The following parameters are available:</p>
<div class="openblock">
<div class="content">
<div class="dlist">
<dl>
<dt class="hdlist1"><code>changes</code></dt>
<dd>
<p>Compute the dirstat numbers by counting the lines that have been
removed from the source, or added to the destination. This ignores
the amount of pure code movements within a file.  In other words,
rearranging lines in a file is not counted as much as other changes.
This is the default behavior when no parameter is given.</p>
</dd>
<dt class="hdlist1"><code>lines</code></dt>
<dd>
<p>Compute the dirstat numbers by doing the regular line-based diff
analysis, and summing the removed/added line counts. (For binary
files, count 64-byte chunks instead, since binary files have no
natural concept of lines). This is a more expensive <code>--dirstat</code>
behavior than the <code>changes</code> behavior, but it does count rearranged
lines within a file as much as other changes. The resulting output
is consistent with what you get from the other <code>--*stat</code> options.</p>
</dd>
<dt class="hdlist1"><code>files</code></dt>
<dd>
<p>Compute the dirstat numbers by counting the number of files changed.
Each changed file counts equally in the dirstat analysis. This is
the computationally cheapest <code>--dirstat</code> behavior, since it does
not have to look at the file contents at all.</p>
</dd>
<dt class="hdlist1"><code>cumulative</code></dt>
<dd>
<p>Count changes in a child directory for the parent directory as well.
Note that when using <code>cumulative</code>, the sum of the percentages
reported may exceed 100%. The default (non-cumulative) behavior can
be specified with the <code>noncumulative</code> parameter.</p>
</dd>
<dt class="hdlist1"><em>&lt;limit&gt;</em></dt>
<dd>
<p>An integer parameter specifies a cut-off percent (3% by default).
Directories contributing less than this percentage of the changes
are not shown in the output.</p>
</dd>
</dl>
</div>
</div>
</div>
<div class="paragraph">
<p>Example: The following will count changed files, while ignoring
directories with less than 10% of the total amount of changed files,
and accumulating child directory counts in the parent directories:
<code>--dirstat=files,10,cumulative</code>.</p>
</div>
</dd>
<dt class="hdlist1"><code>--cumulative</code></dt>
<dd>
<p>Synonym for <code>--dirstat=cumulative</code>.</p>
</dd>
<dt class="hdlist1"><code>--dirstat-by-file</code>[<code>=</code><em>&lt;param&gt;</em><code>,..</code>.]</dt>
<dd>
<p>Synonym for <code>--dirstat=files,</code><em>&lt;param&gt;</em><code>,..</code>..</p>
</dd>
<dt class="hdlist1"><code>--summary</code></dt>
<dd>
<p>Output a condensed summary of extended header information
such as creations, renames and mode changes.</p>
</dd>
<dt class="hdlist1"><code>--patch-with-stat</code></dt>
<dd>
<p>Synonym for <code>-p</code> <code>--stat</code>.</p>
</dd>
<dt class="hdlist1"><code>-z</code></dt>
<dd>
<p>When <code>--raw</code>, <code>--numstat</code>, <code>--name-only</code> or <code>--name-status</code> has been
given, do not munge pathnames and use NULs as output field terminators.</p>
<div class="paragraph">
<p>Without this option, pathnames with "unusual" characters are quoted as
explained for the configuration variable <code>core.quotePath</code> (see
<a href="git-config.html">git-config(1)</a>).</p>
</div>
</dd>
<dt class="hdlist1"><code>--name-only</code></dt>
<dd>
<p>Show only the name of each changed file in the post-image tree.
The file names are often encoded in UTF-8.
For more information see the discussion about encoding in the <a href="git-log.html">git-log(1)</a>
manual page.</p>
</dd>
<dt class="hdlist1"><code>--name-status</code></dt>
<dd>
<p>Show only the name(s) and status of each changed file. See the description
of the <code>--diff-filter</code> option on what the status letters mean.
Just like <code>--name-only</code> the file names are often encoded in UTF-8.</p>
</dd>
<dt class="hdlist1"><code>--submodule</code>[<code>=</code><em>&lt;format&gt;</em>]</dt>
<dd>
<p>Specify how differences in submodules are shown.  When specifying
<code>--submodule=short</code> the <code>short</code> format is used.  This format just
shows the names of the commits at the beginning and end of the range.
When <code>--submodule</code> or <code>--submodule=log</code> is specified, the <code>log</code>
format is used.  This format lists the commits in the range like
<a href="git-submodule.html">git-submodule(1)</a> <code>summary</code> does.  When <code>--submodule=diff</code>
is specified, the <code>diff</code> format is used.  This format shows an
inline diff of the changes in the submodule contents between the
commit range.  Defaults to <code>diff.submodule</code> or the <code>short</code> format
if the config option is unset.</p>
</dd>
<dt class="hdlist1"><code>--color</code>[<code>=</code><em>&lt;when&gt;</em>]</dt>
<dd>
<p>Show colored diff.
<code>--color</code> (i.e. without <code>=</code><em>&lt;when&gt;</em>) is the same as <code>--color=always</code>.
<em>&lt;when&gt;</em> can be one of <code>always</code>, <code>never</code>, or <code>auto</code>.
It can be changed by the <code>color.ui</code> and <code>color.diff</code>
configuration settings.</p>
</dd>
<dt class="hdlist1"><code>--no-color</code></dt>
<dd>
<p>Turn off colored diff.
This can be used to override configuration settings.
It is the same as <code>--color=never</code>.</p>
</dd>
<dt class="hdlist1"><code>--color-moved</code>[<code>=</code><em>&lt;mode&gt;</em>]</dt>
<dd>
<p>Moved lines of code are colored differently.
It can be changed by the <code>diff.colorMoved</code> configuration setting.
The <em>&lt;mode&gt;</em> defaults to <code>no</code> if the option is not given
and to <code>zebra</code> if the option with no mode is given.
The mode must be one of:</p>
<div class="openblock">
<div class="content">
<div class="dlist">
<dl>
<dt class="hdlist1"><code>no</code></dt>
<dd>
<p>Moved lines are not highlighted.</p>
</dd>
<dt class="hdlist1"><code>default</code></dt>
<dd>
<p>Is a synonym for <code>zebra</code>. This may change to a more sensible mode
in the future.</p>
</dd>
<dt class="hdlist1"><code>plain</code></dt>
<dd>
<p>Any line that is added in one location and was removed
in another location will be colored with <code>color.diff.newMoved</code>.
Similarly <code>color.diff.oldMoved</code> will be used for removed lines
that are added somewhere else in the diff. This mode picks up any
moved line, but it is not very useful in a review to determine
if a block of code was moved without permutation.</p>
</dd>
<dt class="hdlist1"><code>blocks</code></dt>
<dd>
<p>Blocks of moved text of at least 20 alphanumeric characters
are detected greedily. The detected blocks are
painted using either the <code>color.diff.</code>(<code>old</code>|<code>new</code>)<code>Moved</code> color.
Adjacent blocks cannot be told apart.</p>
</dd>
<dt class="hdlist1"><code>zebra</code></dt>
<dd>
<p>Blocks of moved text are detected as in <code>blocks</code> mode. The blocks
are painted using either the <code>color.diff.</code>(<code>old</code>|<code>new</code>)<code>Moved</code> color or
<code>color.diff.</code>(<code>old</code>|<code>new</code>)<code>MovedAlternative</code>. The change between
the two colors indicates that a new block was detected.</p>
</dd>
<dt class="hdlist1"><code>dimmed-zebra</code></dt>
<dd>
<p>Similar to <code>zebra</code>, but additional dimming of uninteresting parts
of moved code is performed. The bordering lines of two adjacent
blocks are considered interesting, the rest is uninteresting.
<code>dimmed_zebra</code> is a deprecated synonym.</p>
</dd>
</dl>
</div>
</div>
</div>
</dd>
<dt class="hdlist1"><code>--no-color-moved</code></dt>
<dd>
<p>Turn off move detection. This can be used to override configuration
settings. It is the same as <code>--color-moved=no</code>.</p>
</dd>
<dt class="hdlist1"><code>--color-moved-ws=</code><em>&lt;mode&gt;</em><code>,..</code>.</dt>
<dd>
<p>This configures how whitespace is ignored when performing the
move detection for <code>--color-moved</code>.
It can be set by the <code>diff.colorMovedWS</code> configuration setting.
These modes can be given as a comma separated list:</p>
<div class="openblock">
<div class="content">
<div class="dlist">
<dl>
<dt class="hdlist1"><code>no</code></dt>
<dd>
<p>Do not ignore whitespace when performing move detection.</p>
</dd>
<dt class="hdlist1"><code>ignore-space-at-eol</code></dt>
<dd>
<p>Ignore changes in whitespace at EOL.</p>
</dd>
<dt class="hdlist1"><code>ignore-space-change</code></dt>
<dd>
<p>Ignore changes in amount of whitespace.  This ignores whitespace
at line end, and considers all other sequences of one or
more whitespace characters to be equivalent.</p>
</dd>
<dt class="hdlist1"><code>ignore-all-space</code></dt>
<dd>
<p>Ignore whitespace when comparing lines. This ignores differences
even if one line has whitespace where the other line has none.</p>
</dd>
<dt class="hdlist1"><code>allow-indentation-change</code></dt>
<dd>
<p>Initially ignore any whitespace in the move detection, then
group the moved code blocks only into a block if the change in
whitespace is the same per line. This is incompatible with the
other modes.</p>
</dd>
</dl>
</div>
</div>
</div>
</dd>
<dt class="hdlist1"><code>--no-color-moved-ws</code></dt>
<dd>
<p>Do not ignore whitespace when performing move detection. This can be
used to override configuration settings. It is the same as
<code>--color-moved-ws=no</code>.</p>
</dd>
<dt class="hdlist1"><code>--word-diff</code>[<code>=</code><em>&lt;mode&gt;</em>]</dt>
<dd>
<p>By default, words are delimited by whitespace; see
<code>--word-diff-regex</code> below.  The <em>&lt;mode&gt;</em> defaults to <code>plain</code>, and
must be one of:</p>
<div class="openblock">
<div class="content">
<div class="dlist">
<dl>
<dt class="hdlist1"><code>color</code></dt>
<dd>
<p>Highlight changed words using only colors.  Implies <code>--color</code>.</p>
</dd>
<dt class="hdlist1"><code>plain</code></dt>
<dd>
<p>Show words as [<code>-removed-</code>] and {<code>added</code>}.  Makes no
attempts to escape the delimiters if they appear in the input,
so the output may be ambiguous.</p>
</dd>
<dt class="hdlist1"><code>porcelain</code></dt>
<dd>
<p>Use a special line-based format intended for script
consumption.  Added/removed/unchanged runs are printed in the
usual unified diff format, starting with a <code>+</code>/<code>-</code>/` `
character at the beginning of the line and extending to the
end of the line.  Newlines in the input are represented by a
tilde <code>~</code> on a line of its own.</p>
</dd>
<dt class="hdlist1"><code>none</code></dt>
<dd>
<p>Disable word diff again.</p>
</dd>
</dl>
</div>
</div>
</div>
<div class="paragraph">
<p>Note that despite the name of the first mode, color is used to
highlight the changed parts in all modes if enabled.</p>
</div>
</dd>
<dt class="hdlist1"><code>--word-diff-regex=</code><em>&lt;regex&gt;</em></dt>
<dd>
<p>Use <em>&lt;regex&gt;</em> to decide what a word is, instead of considering
runs of non-whitespace to be a word.  Also implies
<code>--word-diff</code> unless it was already enabled.</p>
<div class="paragraph">
<p>Every non-overlapping match of the
<em>&lt;regex&gt;</em> is considered a word.  Anything between these matches is
considered whitespace and ignored(!) for the purposes of finding
differences.  You may want to append |[<code>^</code>[<code>:space:</code>]] to your regular
expression to make sure that it matches all non-whitespace characters.
A match that contains a newline is silently truncated(!) at the
newline.</p>
</div>
<div class="paragraph">
<p>For example, <code>--word-diff-regex=.</code> will treat each character as a word
and, correspondingly, show differences character by character.</p>
</div>
<div class="paragraph">
<p>The regex can also be set via a diff driver or configuration option, see
<a href="gitattributes.html">gitattributes(5)</a> or <a href="git-config.html">git-config(1)</a>.  Giving it explicitly
overrides any diff driver or configuration setting.  Diff drivers
override configuration settings.</p>
</div>
</dd>
<dt class="hdlist1"><code>--color-words</code>[<code>=</code><em>&lt;regex&gt;</em>]</dt>
<dd>
<p>Equivalent to <code>--word-diff=color</code> plus (if a regex was
specified) <code>--word-diff-regex=</code><em>&lt;regex&gt;</em>.</p>
</dd>
<dt class="hdlist1"><code>--no-renames</code></dt>
<dd>
<p>Turn off rename detection, even when the configuration
file gives the default to do so.</p>
</dd>
<dt class="hdlist1"><code>--rename-empty</code></dt>
<dt class="hdlist1"><code>--no-rename-empty</code></dt>
<dd>
<p>Whether to use empty blobs as rename source.</p>
</dd>
<dt class="hdlist1"><code>--check</code></dt>
<dd>
<p>Warn if changes introduce conflict markers or whitespace errors.
What are considered whitespace errors is controlled by <code>core.whitespace</code>
configuration.  By default, trailing whitespaces (including
lines that consist solely of whitespaces) and a space character
that is immediately followed by a tab character inside the
initial indent of the line are considered whitespace errors.
Exits with non-zero status if problems are found. Not compatible
with <code>--exit-code</code>.</p>
</dd>
<dt class="hdlist1"><code>--ws-error-highlight=</code><em>&lt;kind&gt;</em></dt>
<dd>
<p>Highlight whitespace errors in the <code>context</code>, <code>old</code> or <code>new</code>
lines of the diff.  Multiple values are separated by comma,
<code>none</code> resets previous values, <code>default</code> reset the list to
<code>new</code> and <code>all</code> is a shorthand for <code>old,new,context</code>.  When
this option is not given, and the configuration variable
<code>diff.wsErrorHighlight</code> is not set, only whitespace errors in
<code>new</code> lines are highlighted. The whitespace errors are colored
with <code>color.diff.whitespace</code>.</p>
</dd>
<dt class="hdlist1"><code>--full-index</code></dt>
<dd>
<p>Instead of the first handful of characters, show the full
pre- and post-image blob object names on the "index"
line when generating patch format output.</p>
</dd>
<dt class="hdlist1"><code>--binary</code></dt>
<dd>
<p>In addition to <code>--full-index</code>, output a binary diff that
can be applied with <code>git-apply</code>.
Implies <code>--patch</code>.</p>
</dd>
<dt class="hdlist1"><code>--abbrev</code>[<code>=</code><em>&lt;n&gt;</em>]</dt>
<dd>
<p>Instead of showing the full 40-byte hexadecimal object
name in diff-raw format output and diff-tree header
lines, show the shortest prefix that is at least <em>&lt;n&gt;</em>
hexdigits long that uniquely refers the object.
In diff-patch output format, <code>--full-index</code> takes higher
precedence, i.e. if <code>--full-index</code> is specified, full blob
names will be shown regardless of <code>--abbrev</code>.
Non default number of digits can be specified with <code>--abbrev=</code><em>&lt;n&gt;</em>.</p>
</dd>
<dt class="hdlist1"><code>-B</code>[<em>&lt;n&gt;</em>][<code>/</code><em>&lt;m&gt;</em>]</dt>
<dt class="hdlist1"><code>--break-rewrites</code>[<code>=</code>[<em>&lt;n&gt;</em>][<code>/</code><em>&lt;m&gt;</em>]]</dt>
<dd>
<p>Break complete rewrite changes into pairs of delete and
create. This serves two purposes:</p>
<div class="paragraph">
<p>It affects the way a change that amounts to a total rewrite of a file
not as a series of deletion and insertion mixed together with a very
few lines that happen to match textually as the context, but as a
single deletion of everything old followed by a single insertion of
everything new, and the number <em>&lt;m&gt;</em> controls this aspect of the <code>-B</code>
option (defaults to 60%). <code>-B/70%</code> specifies that less than 30% of the
original should remain in the result for Git to consider it a total
rewrite (i.e. otherwise the resulting patch will be a series of
deletion and insertion mixed together with context lines).</p>
</div>
<div class="paragraph">
<p>When used with <code>-M</code>, a totally-rewritten file is also considered as the
source of a rename (usually <code>-M</code> only considers a file that disappeared
as the source of a rename), and the number <em>&lt;n&gt;</em> controls this aspect of
the <code>-B</code> option (defaults to 50%). <code>-B20%</code> specifies that a change with
addition and deletion compared to 20% or more of the file&#8217;s size are
eligible for being picked up as a possible source of a rename to
another file.</p>
</div>
</dd>
<dt class="hdlist1"><code>-M</code>[<em>&lt;n&gt;</em>]</dt>
<dt class="hdlist1"><code>--find-renames</code>[<code>=</code><em>&lt;n&gt;</em>]</dt>
<dd>
<p>Detect renames.
If <em>&lt;n&gt;</em> is specified, it is a threshold on the similarity
index (i.e. amount of addition/deletions compared to the
file&#8217;s size). For example, <code>-M90%</code> means Git should consider a
delete/add pair to be a rename if more than 90% of the file
hasn&#8217;t changed.  Without a <code>%</code> sign, the number is to be read as
a fraction, with a decimal point before it.  I.e., <code>-M5</code> becomes
0.5, and is thus the same as <code>-M50%</code>.  Similarly, <code>-M05</code> is
the same as <code>-M5%</code>.  To limit detection to exact renames, use
<code>-M100%</code>.  The default similarity index is 50%.</p>
</dd>
<dt class="hdlist1"><code>-C</code>[<em>&lt;n&gt;</em>]</dt>
<dt class="hdlist1"><code>--find-copies</code>[<code>=</code><em>&lt;n&gt;</em>]</dt>
<dd>
<p>Detect copies as well as renames.  See also <code>--find-copies-harder</code>.
If <em>&lt;n&gt;</em> is specified, it has the same meaning as for <code>-M</code><em>&lt;n&gt;</em>.</p>
</dd>
<dt class="hdlist1"><code>--find-copies-harder</code></dt>
<dd>
<p>For performance reasons, by default, <code>-C</code> 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.  Giving more than one
<code>-C</code> option has the same effect.</p>
</dd>
<dt class="hdlist1"><code>-D</code></dt>
<dt class="hdlist1"><code>--irreversible-delete</code></dt>
<dd>
<p>Omit the preimage for deletes, i.e. print only the header but not
the diff between the preimage and <code>/dev/null</code>. The resulting patch
is not meant to be applied with <code>patch</code> or <code>git</code> <code>apply</code>; this is
solely for people who want to just concentrate on reviewing the
text after the change. In addition, the output obviously lacks
enough information to apply such a patch in reverse, even manually,
hence the name of the option.</p>
<div class="paragraph">
<p>When used together with <code>-B</code>, omit also the preimage in the deletion part
of a delete/create pair.</p>
</div>
</dd>
<dt class="hdlist1"><code>-l</code><em>&lt;num&gt;</em></dt>
<dd>
<p>The <code>-M</code> and <code>-C</code> options involve some preliminary steps that
can detect subsets of renames/copies cheaply, followed by an
exhaustive fallback portion that compares all remaining
unpaired destinations to all relevant sources.  (For renames,
only remaining unpaired sources are relevant; for copies, all
original sources are relevant.)  For N sources and
destinations, this exhaustive check is O(N^2).  This option
prevents the exhaustive portion of rename/copy detection from
running if the number of source/destination files involved
exceeds the specified number.  Defaults to <code>diff.renameLimit</code>.
Note that a value of 0 is treated as unlimited.</p>
</dd>
<dt class="hdlist1"><code>--diff-filter=</code>[(<code>A</code>|<code>C</code>|<code>D</code>|<code>M</code>|<code>R</code>|<code>T</code>|<code>U</code>|<code>X</code>|<code>B</code>)<code>...</code>[<code>*</code>]]</dt>
<dd>
<p>Select only files that are Added (<code>A</code>), Copied (<code>C</code>),
Deleted (<code>D</code>), Modified (<code>M</code>), Renamed (<code>R</code>), have their
type (i.e. regular file, symlink, submodule, &#8230;&#8203;) changed (<code>T</code>),
are Unmerged (<code>U</code>), are
Unknown (<code>X</code>), or have had their pairing Broken (<code>B</code>).
Any combination of the filter characters (including none) can be used.
When <code>*</code> (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.</p>
<div class="paragraph">
<p>Also, these upper-case letters can be downcased to exclude.  E.g.
<code>--diff-filter=ad</code> excludes added and deleted paths.</p>
</div>
<div class="paragraph">
<p>Note that not all diffs can feature all types. For instance, copied and
renamed entries cannot appear if detection for those types is disabled.</p>
</div>
</dd>
<dt class="hdlist1"><code>-S</code><em>&lt;string&gt;</em></dt>
<dd>
<p>Look for differences that change the number of occurrences of
the specified <em>&lt;string&gt;</em> (i.e. addition/deletion) in a file.
Intended for the scripter&#8217;s use.</p>
<div class="paragraph">
<p>It is useful when you&#8217;re looking for an exact block of code (like a
struct), and want to know the history of that block since it first
came into being: use the feature iteratively to feed the interesting
block in the preimage back into <code>-S</code>, and keep going until you get the
very first version of the block.</p>
</div>
<div class="paragraph">
<p>Binary files are searched as well.</p>
</div>
</dd>
<dt class="hdlist1"><code>-G</code><em>&lt;regex&gt;</em></dt>
<dd>
<p>Look for differences whose patch text contains added/removed
lines that match <em>&lt;regex&gt;</em>.</p>
<div class="paragraph">
<p>To illustrate the difference between <code>-S</code><em>&lt;regex&gt;</em> <code>--pickaxe-regex</code> and
<code>-G</code><em>&lt;regex&gt;</em>, consider a commit with the following diff in the same
file:</p>
</div>
<div class="listingblock">
<div class="content">
<pre>+    return frotz(nitfol, two-&gt;ptr, 1, 0);
...
-    hit = frotz(nitfol, mf2.ptr, 1, 0);</pre>
</div>
</div>
<div class="paragraph">
<p>While <code>git</code> <code>log</code> <code>-G</code>"frotz\(<code>nitfol</code>" will show this commit, <code>git</code> <code>log</code>
<code>-S</code>"frotz\(<code>nitfol</code>" <code>--pickaxe-regex</code> will not (because the number of
occurrences of that string did not change).</p>
</div>
<div class="paragraph">
<p>Unless <code>--text</code> is supplied patches of binary files without a textconv
filter will be ignored.</p>
</div>
<div class="paragraph">
<p>See the <em>pickaxe</em> entry in <a href="gitdiffcore.html">gitdiffcore(7)</a> for more
information.</p>
</div>
</dd>
<dt class="hdlist1"><code>--find-object=</code><em>&lt;object-id&gt;</em></dt>
<dd>
<p>Look for differences that change the number of occurrences of
the specified object. Similar to <code>-S</code>, just the argument is different
in that it doesn&#8217;t search for a specific string but for a specific
object id.</p>
<div class="paragraph">
<p>The object can be a blob or a submodule commit. It implies the <code>-t</code> option in
<code>git-log</code> to also find trees.</p>
</div>
</dd>
<dt class="hdlist1"><code>--pickaxe-all</code></dt>
<dd>
<p>When <code>-S</code> or <code>-G</code> finds a change, show all the changes in that
changeset, not just the files that contain the change
in <em>&lt;string&gt;</em>.</p>
</dd>
<dt class="hdlist1"><code>--pickaxe-regex</code></dt>
<dd>
<p>Treat the <em>&lt;string&gt;</em> given to <code>-S</code> as an extended POSIX regular
expression to match.</p>
</dd>
<dt class="hdlist1"><code>-O</code><em>&lt;orderfile&gt;</em></dt>
<dd>
<p>Control the order in which files appear in the output.
This overrides the <code>diff.orderFile</code> configuration variable
(see <a href="git-config.html">git-config(1)</a>).  To cancel <code>diff.orderFile</code>,
use <code>-O/dev/null</code>.</p>
<div class="paragraph">
<p>The output order is determined by the order of glob patterns in
<em>&lt;orderfile&gt;</em>.
All files with pathnames that match the first pattern are output
first, all files with pathnames that match the second pattern (but not
the first) are output next, and so on.
All files with pathnames that do not match any pattern are output
last, as if there was an implicit match-all pattern at the end of the
file.
If multiple pathnames have the same rank (they match the same pattern
but no earlier patterns), their output order relative to each other is
the normal order.</p>
</div>
<div class="paragraph">
<p><em>&lt;orderfile&gt;</em> is parsed as follows:</p>
</div>
<div class="openblock">
<div class="content">
<div class="ulist">
<ul>
<li>
<p>Blank lines are ignored, so they can be used as separators for
readability.</p>
</li>
<li>
<p>Lines starting with a hash ("#") are ignored, so they can be used
for comments.  Add a backslash ("<code>\</code>") to the beginning of the
pattern if it starts with a hash.</p>
</li>
<li>
<p>Each other line contains a single pattern.</p>
</li>
</ul>
</div>
</div>
</div>
<div class="paragraph">
<p>Patterns have the same syntax and semantics as patterns used for
<code>fnmatch</code>(3) without the <code>FNM_PATHNAME</code> flag, except a pathname also
matches a pattern if removing any number of the final pathname
components matches the pattern.  For example, the pattern "<code>foo*bar</code>"
matches "<code>fooasdfbar</code>" and "<code>foo/bar/baz/asdf</code>" but not "<code>foobarx</code>".</p>
</div>
</dd>
<dt class="hdlist1"><code>--skip-to=</code><em>&lt;file&gt;</em></dt>
<dt class="hdlist1"><code>--rotate-to=</code><em>&lt;file&gt;</em></dt>
<dd>
<p>Discard the files before the named <em>&lt;file&gt;</em> from the output
(i.e. <em>skip to</em>), or move them to the end of the output
(i.e. <em>rotate to</em>).  These options were invented primarily for the use
of the <code>git</code> <code>difftool</code> command, and may not be very useful
otherwise.</p>
</dd>
<dt class="hdlist1"><code>-R</code></dt>
<dd>
<p>Swap two inputs; that is, show differences from index or
on-disk file to tree contents.</p>
</dd>
<dt class="hdlist1"><code>--relative</code>[<code>=</code><em>&lt;path&gt;</em>]</dt>
<dt class="hdlist1"><code>--no-relative</code></dt>
<dd>
<p>When run from a subdirectory of the project, it can be
told to exclude changes outside the directory and show
pathnames relative to it with this option.  When you are
not in a subdirectory (e.g. in a bare repository), you
can name which subdirectory to make the output relative
to by giving a <em>&lt;path&gt;</em> as an argument.
<code>--no-relative</code> can be used to countermand both <code>diff.relative</code> config
option and previous <code>--relative</code>.</p>
</dd>
<dt class="hdlist1"><code>-a</code></dt>
<dt class="hdlist1"><code>--text</code></dt>
<dd>
<p>Treat all files as text.</p>
</dd>
<dt class="hdlist1"><code>--ignore-cr-at-eol</code></dt>
<dd>
<p>Ignore carriage-return at the end of line when doing a comparison.</p>
</dd>
<dt class="hdlist1"><code>--ignore-space-at-eol</code></dt>
<dd>
<p>Ignore changes in whitespace at EOL.</p>
</dd>
<dt class="hdlist1"><code>-b</code></dt>
<dt class="hdlist1"><code>--ignore-space-change</code></dt>
<dd>
<p>Ignore changes in amount of whitespace.  This ignores whitespace
at line end, and considers all other sequences of one or
more whitespace characters to be equivalent.</p>
</dd>
<dt class="hdlist1"><code>-w</code></dt>
<dt class="hdlist1"><code>--ignore-all-space</code></dt>
<dd>
<p>Ignore whitespace when comparing lines.  This ignores
differences even if one line has whitespace where the other
line has none.</p>
</dd>
<dt class="hdlist1"><code>--ignore-blank-lines</code></dt>
<dd>
<p>Ignore changes whose lines are all blank.</p>
</dd>
<dt class="hdlist1"><code>-I</code><em>&lt;regex&gt;</em></dt>
<dt class="hdlist1"><code>--ignore-matching-lines=</code><em>&lt;regex&gt;</em></dt>
<dd>
<p>Ignore changes whose all lines match <em>&lt;regex&gt;</em>.  This option may
be specified more than once.</p>
</dd>
<dt class="hdlist1"><code>--inter-hunk-context=</code><em>&lt;number&gt;</em></dt>
<dd>
<p>Show the context between diff hunks, up to the specified <em>&lt;number&gt;</em>
of lines, thereby fusing hunks that are close to each other.
Defaults to <code>diff.interHunkContext</code> or 0 if the config option
is unset.</p>
</dd>
<dt class="hdlist1"><code>-W</code></dt>
<dt class="hdlist1"><code>--function-context</code></dt>
<dd>
<p>Show whole function as context lines for each change.
The function names are determined in the same way as
<code>git</code> <code>diff</code> works out patch hunk headers (see "Defining a
custom hunk-header" in <a href="gitattributes.html">gitattributes(5)</a>).</p>
</dd>
<dt class="hdlist1"><code>--exit-code</code></dt>
<dd>
<p>Make the program exit with codes similar to <code>diff</code>(1).
That is, it exits with 1 if there were differences and
0 means no differences.</p>
</dd>
<dt class="hdlist1"><code>--quiet</code></dt>
<dd>
<p>Disable all output of the program. Implies <code>--exit-code</code>.
Disables execution of external diff helpers whose exit code
is not trusted, i.e. their respective configuration option
<code>diff.trustExitCode</code> or <code>diff.</code><em>&lt;driver&gt;</em>.<code>trustExitCode</code> or
environment variable <code>GIT_EXTERNAL_DIFF_TRUST_EXIT_CODE</code> is
false.</p>
</dd>
<dt class="hdlist1"><code>--ext-diff</code></dt>
<dd>
<p>Allow an external diff helper to be executed. If you set an
external diff driver with <a href="gitattributes.html">gitattributes(5)</a>, you need
to use this option with <a href="git-log.html">git-log(1)</a> and friends.</p>
</dd>
<dt class="hdlist1"><code>--no-ext-diff</code></dt>
<dd>
<p>Disallow external diff drivers.</p>
</dd>
<dt class="hdlist1"><code>--textconv</code></dt>
<dt class="hdlist1"><code>--no-textconv</code></dt>
<dd>
<p>Allow (or disallow) external text conversion filters to be run
when comparing binary files. See <a href="gitattributes.html">gitattributes(5)</a> for
details. Because textconv filters are typically a one-way
conversion, the resulting diff is suitable for human
consumption, but cannot be applied. For this reason, textconv
filters are enabled by default only for <a href="git-diff.html">git-diff(1)</a> and
<a href="git-log.html">git-log(1)</a>, but not for <a href="git-format-patch.html">git-format-patch(1)</a> or
diff plumbing commands.</p>
</dd>
<dt class="hdlist1"><code>--ignore-submodules</code>[<code>=</code>(<code>none</code>|<code>untracked</code>|<code>dirty</code>|<code>all</code>)]</dt>
<dd>
<p>Ignore changes to submodules in the diff generation. <code>all</code> is the default.
Using <code>none</code> will consider the submodule modified when it either contains
untracked or modified files or its <code>HEAD</code> differs from the commit recorded
in the superproject and can be used to override any settings of the
<code>ignore</code> option in <a href="git-config.html">git-config(1)</a> or <a href="gitmodules.html">gitmodules(5)</a>. When
<code>untracked</code> is used submodules are not considered dirty when they only
contain untracked content (but they are still scanned for modified
content). Using <code>dirty</code> ignores all changes to the work tree of submodules,
only changes to the commits stored in the superproject are shown (this was
the behavior until 1.7.0). Using <code>all</code> hides all changes to submodules.</p>
</dd>
<dt class="hdlist1"><code>--src-prefix=</code><em>&lt;prefix&gt;</em></dt>
<dd>
<p>Show the given source <em>&lt;prefix&gt;</em> instead of "a/".</p>
</dd>
<dt class="hdlist1"><code>--dst-prefix=</code><em>&lt;prefix&gt;</em></dt>
<dd>
<p>Show the given destination <em>&lt;prefix&gt;</em> instead of "b/".</p>
</dd>
<dt class="hdlist1"><code>--no-prefix</code></dt>
<dd>
<p>Do not show any source or destination prefix.</p>
</dd>
<dt class="hdlist1"><code>--default-prefix</code></dt>
<dd>
<p>Use the default source and destination prefixes ("a/" and "b/").
This overrides configuration variables such as <code>diff.noprefix</code>,
<code>diff.srcPrefix</code>, <code>diff.dstPrefix</code>, and <code>diff.mnemonicPrefix</code>
(see <a href="git-config.html">git-config(1)</a>).</p>
</dd>
<dt class="hdlist1"><code>--line-prefix=</code><em>&lt;prefix&gt;</em></dt>
<dd>
<p>Prepend an additional <em>&lt;prefix&gt;</em> to every line of output.</p>
</dd>
<dt class="hdlist1"><code>--ita-invisible-in-index</code></dt>
<dd>
<p>By default entries added by <code>git</code> <code>add</code> <code>-N</code> appear as an existing
empty file in <code>git</code> <code>diff</code> and a new file in <code>git</code> <code>diff</code> <code>--cached</code>.
This option makes the entry appear as a new file in <code>git</code> <code>diff</code>
and non-existent in <code>git</code> <code>diff</code> <code>--cached</code>. This option could be
reverted with <code>--ita-visible-in-index</code>. Both options are
experimental and could be removed in future.</p>
</dd>
<dt class="hdlist1">--max-depth=&lt;depth&gt;</dt>
<dd>
<p>For each pathspec given on command line, descend at most <em>&lt;depth&gt;</em>
levels of directories. A value of <code>-1</code> means no limit.
Cannot be combined with wildcards in the pathspec.
Given a tree containing <code>foo/bar/baz</code>, the following list shows the
matches generated by each set of options:</p>
<div class="openblock">
<div class="content">
<div class="ulist">
<ul>
<li>
<p><code>--max-depth=0</code> <code>--</code> <code>foo</code>: <code>foo</code></p>
</li>
<li>
<p><code>--max-depth=1</code> <code>--</code> <code>foo</code>: <code>foo/bar</code></p>
</li>
<li>
<p><code>--max-depth=1</code> <code>--</code> <code>foo/bar</code>: <code>foo/bar/baz</code></p>
</li>
<li>
<p><code>--max-depth=1</code> <code>--</code> <code>foo</code> <code>foo/bar</code>: <code>foo/bar/baz</code></p>
</li>
<li>
<p><code>--max-depth=2</code> <code>--</code> <code>foo</code>: <code>foo/bar/baz</code></p>
</li>
</ul>
</div>
</div>
</div>
<div class="paragraph">
<p>If no pathspec is given, the depth is measured as if all
top-level entries were specified. Note that this is different
than measuring from the root, in that <code>--max-depth=0</code> would
still return <code>foo</code>. This allows you to still limit depth while
asking for a subset of the top-level entries.</p>
</div>
<div class="paragraph">
<p>Note that this option is only supported for diffs between tree objects,
not against the index or working tree.</p>
</div>
</dd>
</dl>
</div>
<div class="paragraph">
<p>For more detailed explanation on these common options, see also
<a href="gitdiffcore.html">gitdiffcore(7)</a>.</p>
</div>
<div class="dlist">
<dl>
<dt class="hdlist1"><code>-1</code></dt>
<dt class="hdlist1"><code>--base</code></dt>
<dt class="hdlist1"><code>-2</code></dt>
<dt class="hdlist1"><code>--ours</code></dt>
<dt class="hdlist1"><code>-3</code></dt>
<dt class="hdlist1"><code>--theirs</code></dt>
<dd>
<p>Compare the working tree with</p>
<div class="openblock">
<div class="content">
<div class="ulist">
<ul>
<li>
<p>the "base" version (stage #1) when using <code>-1</code> or <code>--base</code>,</p>
</li>
<li>
<p>"our branch" (stage #2) when using <code>-2</code> or <code>--ours</code>, or</p>
</li>
<li>
<p>"their branch" (stage #3) when using <code>-3</code> or <code>--theirs</code>.</p>
</li>
</ul>
</div>
</div>
</div>
<div class="paragraph">
<p>The index contains these stages only for unmerged entries i.e.
while resolving conflicts.  See <a href="git-read-tree.html">git-read-tree(1)</a>
section "3-Way Merge" for detailed information.</p>
</div>
</dd>
<dt class="hdlist1"><code>-0</code></dt>
<dd>
<p>Omit diff output for unmerged entries and just show
"Unmerged".  Can be used only when comparing the working tree
with the index.</p>
</dd>
<dt class="hdlist1"><em>&lt;path&gt;</em>...</dt>
<dd>
<p>The <em>&lt;path&gt;</em> parameters, when given, are used to limit
the diff to the named paths (you can give directory
names and get diff for all files under them).</p>
</dd>
</dl>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_raw_output_format">Raw output format</h2>
<div class="sectionbody">
<div class="paragraph">
<p>The raw output format from <code>git-diff-index</code>, <code>git-diff-tree</code>,
<code>git-diff-files</code> and <code>git</code> <code>diff</code> <code>--raw</code> are very similar.</p>
</div>
<div class="paragraph">
<p>These commands all compare two sets of things; what is
compared differs:</p>
</div>
<div class="dlist">
<dl>
<dt class="hdlist1"><code>git-diff-index</code> <em>&lt;tree-ish&gt;</em></dt>
<dd>
<p>compares the <em>&lt;tree-ish&gt;</em> and the files on the filesystem.</p>
</dd>
<dt class="hdlist1"><code>git-diff-index</code> <code>--cached</code> <em>&lt;tree-ish&gt;</em></dt>
<dd>
<p>compares the <em>&lt;tree-ish&gt;</em> and the index.</p>
</dd>
<dt class="hdlist1"><code>git-diff-tree</code> [<code>-r</code>] <em>&lt;tree-ish-1&gt;</em> <em>&lt;tree-ish-2&gt;</em> [<em>&lt;pattern&gt;</em>...]</dt>
<dd>
<p>compares the trees named by the two arguments.</p>
</dd>
<dt class="hdlist1"><code>git-diff-files</code> [<em>&lt;pattern&gt;</em>...]</dt>
<dd>
<p>compares the index and the files on the filesystem.</p>
</dd>
</dl>
</div>
<div class="paragraph">
<p>All the commands print one output line per changed file,
except <code>git</code> <code>diff-files</code> in the case of an unmerged file, which prints
both an "unmerged" and an "in-place edit" line.</p>
</div>
<div class="paragraph">
<p>An output line is formatted this way:</p>
</div>
<div class="listingblock">
<div class="content">
<pre>in-place edit  :100644 100644 bcd1234 0123456 M file0
copy-edit      :100644 100644 abcd123 1234567 C68 file1 file2
rename-edit    :100644 100644 abcd123 1234567 R86 file1 file3
create         :000000 100644 0000000 1234567 A file4
delete         :100644 000000 1234567 0000000 D file5
unmerged       :000000 000000 0000000 0000000 U file6</pre>
</div>
</div>
<div class="paragraph">
<p>That is, from the left to the right:</p>
</div>
<div class="olist arabic">
<ol class="arabic">
<li>
<p>a colon.</p>
</li>
<li>
<p>mode for "src"; 000000 if creation, or if "src" is from the index and is unmerged.</p>
</li>
<li>
<p>a space.</p>
</li>
<li>
<p>mode for "dst"; 000000 if deletion, or if "dst" is from the index and is unmerged.</p>
</li>
<li>
<p>a space.</p>
</li>
<li>
<p>sha1 for "src"; 0{40} if creation, or if "src" is from the index and is unmerged.</p>
</li>
<li>
<p>a space.</p>
</li>
<li>
<p>sha1 for "dst"; 0{40} if deletion, if "dst" is from the index and is unmerged, or if "dst" is from the work tree and is out of sync with the index.</p>
</li>
<li>
<p>a space.</p>
</li>
<li>
<p>status, followed by optional "score" number.</p>
</li>
<li>
<p>a tab or a NUL when <code>-z</code> option is used.</p>
</li>
<li>
<p>path for "src"</p>
</li>
<li>
<p>a tab or a NUL when <code>-z</code> option is used; only exists for C or R.</p>
</li>
<li>
<p>path for "dst"; only exists for C or R.</p>
</li>
<li>
<p>an LF or a NUL when <code>-z</code> option is used, to terminate the record.</p>
</li>
</ol>
</div>
<div class="paragraph">
<p>Possible status letters are:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><code>A</code>: addition of a file</p>
</li>
<li>
<p><code>C</code>: copy of a file into a new one</p>
</li>
<li>
<p><code>D</code>: deletion of a file</p>
</li>
<li>
<p><code>M</code>: modification of the contents or mode of a file</p>
</li>
<li>
<p><code>R</code>: renaming of a file</p>
</li>
<li>
<p><code>T</code>: change in the type of the file (regular file, symbolic link or submodule)</p>
</li>
<li>
<p><code>U</code>: file is unmerged (you must complete the merge before it can
be committed)</p>
</li>
<li>
<p><code>X</code>: "unknown" change type (most probably a bug, please report it)</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>Status letters <code>C</code> and <code>R</code> are always followed by a score (denoting the
percentage of similarity between the source and target of the move or
copy).  Status letter <code>M</code> may be followed by a score (denoting the
percentage of dissimilarity) for file rewrites.</p>
</div>
<div class="paragraph">
<p>The sha1 for "dst" is shown as all 0&#8217;s if a file on the filesystem
is out of sync with the index.</p>
</div>
<div class="paragraph">
<p>Example:</p>
</div>
<div class="listingblock">
<div class="content">
<pre>:100644 100644 5be4a4a 0000000 M file.c</pre>
</div>
</div>
<div class="paragraph">
<p>Without the <code>-z</code> option, pathnames with "unusual" characters are
quoted as explained for the configuration variable <code>core.quotePath</code>
(see <a href="git-config.html">git-config(1)</a>).  Using <code>-z</code> the filename is output
verbatim and the line is terminated by a NUL byte.</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_diff_format_for_merges">diff format for merges</h2>
<div class="sectionbody">
<div class="paragraph">
<p><code>git-diff-tree</code>, <code>git-diff-files</code> and <code>git-diff</code> <code>--raw</code>
can take <code>-c</code> or <code>--cc</code> option
to generate diff output also for merge commits.  The output differs
from the format described above in the following way:</p>
</div>
<div class="olist arabic">
<ol class="arabic">
<li>
<p>there is a colon for each parent</p>
</li>
<li>
<p>there are more "src" modes and "src" sha1</p>
</li>
<li>
<p>status is concatenated status characters for each parent</p>
</li>
<li>
<p>no optional "score" number</p>
</li>
<li>
<p>tab-separated pathname(s) of the file</p>
</li>
</ol>
</div>
<div class="paragraph">
<p>For <code>-c</code> and <code>--cc</code>, only the destination or final path is shown even
if the file was renamed on any side of history.  With
<code>--combined-all-paths</code>, the name of the path in each parent is shown
followed by the name of the path in the merge commit.</p>
</div>
<div class="paragraph">
<p>Examples for <code>-c</code> and <code>--cc</code> without <code>--combined-all-paths</code>:</p>
</div>
<div class="listingblock">
<div class="content">
<pre>::100644 100644 100644 fabadb8 cc95eb0 4866510 MM       desc.c
::100755 100755 100755 52b7a2d 6d1ac04 d2ac7d7 RM       bar.sh
::100644 100644 100644 e07d6c5 9042e82 ee91881 RR       phooey.c</pre>
</div>
</div>
<div class="paragraph">
<p>Examples when <code>--combined-all-paths</code> added to either <code>-c</code> or <code>--cc</code>:</p>
</div>
<div class="listingblock">
<div class="content">
<pre>::100644 100644 100644 fabadb8 cc95eb0 4866510 MM       desc.c  desc.c  desc.c
::100755 100755 100755 52b7a2d 6d1ac04 d2ac7d7 RM       foo.sh  bar.sh  bar.sh
::100644 100644 100644 e07d6c5 9042e82 ee91881 RR       fooey.c fuey.c  phooey.c</pre>
</div>
</div>
<div class="paragraph">
<p>Note that <em>combined diff</em> lists only files which were modified from
all parents.</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="generate_patch_text_with_p">Generating patch text with -p</h2>
<div class="sectionbody">
<div class="paragraph">
<p>Running
<a href="git-diff.html">git-diff(1)</a>,
<a href="git-log.html">git-log(1)</a>,
<a href="git-show.html">git-show(1)</a>,
<a href="git-diff-index.html">git-diff-index(1)</a>,
<a href="git-diff-tree.html">git-diff-tree(1)</a>, or
<a href="git-diff-files.html">git-diff-files(1)</a>
with the <code>-p</code> option produces patch text.
You can customize the creation of patch text via the
<code>GIT_EXTERNAL_DIFF</code> and the <code>GIT_DIFF_OPTS</code> environment variables
(see <a href="git.html">git(1)</a>), and the <code>diff</code> attribute (see <a href="gitattributes.html">gitattributes(5)</a>).</p>
</div>
<div class="paragraph">
<p>What the <code>-p</code> option produces is slightly different from the traditional
diff format:</p>
</div>
<div class="olist arabic">
<ol class="arabic">
<li>
<p>It is preceded by a "git diff" header that looks like this:</p>
<div class="literalblock">
<div class="content">
<pre>diff --git a/file1 b/file2</pre>
</div>
</div>
<div class="paragraph">
<p>The <code>a/</code> and <code>b/</code> filenames are the same unless rename/copy is
involved.  Especially, even for a creation or a deletion,
<code>/dev/null</code> is <em>not</em> used in place of the <code>a/</code> or <code>b/</code> filenames.</p>
</div>
<div class="paragraph">
<p>When a rename/copy is involved, <code>file1</code> and <code>file2</code> show the
name of the source file of the rename/copy and the name of
the file that the rename/copy produces, respectively.</p>
</div>
</li>
<li>
<p>It is followed by one or more extended header lines:</p>
<div class="verseblock">
<pre class="content"><code>old</code> <code>mode</code> <em>&lt;mode&gt;</em>
<code>new</code> <code>mode</code> <em>&lt;mode&gt;</em>
<code>deleted</code> <code>file</code> <code>mode</code> <em>&lt;mode&gt;</em>
<code>new</code> <code>file</code> <code>mode</code> <em>&lt;mode&gt;</em>
<code>copy</code> <code>from</code> <em>&lt;path&gt;</em>
<code>copy</code> <code>to</code> <em>&lt;path&gt;</em>
<code>rename</code> <code>from</code> <em>&lt;path&gt;</em>
<code>rename</code> <code>to</code> <em>&lt;path&gt;</em>
<code>similarity</code> <code>index</code> <em>&lt;number&gt;</em>
<code>dissimilarity</code> <code>index</code> <em>&lt;number&gt;</em>
<code>index</code> <em>&lt;hash&gt;</em><code>..</code><em>&lt;hash&gt;</em> <em>&lt;mode&gt;</em></pre>
</div>
<div class="paragraph">
<p>File modes <em>&lt;mode&gt;</em> are printed as 6-digit octal numbers including the file type
and file permission bits.</p>
</div>
<div class="paragraph">
<p>Path names in extended headers do not include the <code>a/</code> and <code>b/</code> prefixes.</p>
</div>
<div class="paragraph">
<p>The similarity index is the percentage of unchanged lines, and
the dissimilarity index is the percentage of changed lines.  It
is a rounded down integer, followed by a percent sign.  The
similarity index value of 100% is thus reserved for two equal
files, while 100% dissimilarity means that no line from the old
file made it into the new one.</p>
</div>
<div class="paragraph">
<p>The index line includes the blob object names before and after the change.
The <em>&lt;mode&gt;</em> is included if the file mode does not change; otherwise,
separate lines indicate the old and the new mode.</p>
</div>
</li>
<li>
<p>Pathnames with "unusual" characters are quoted as explained for
the configuration variable <code>core.quotePath</code> (see
<a href="git-config.html">git-config(1)</a>).</p>
</li>
<li>
<p>All the <code>file1</code> files in the output refer to files before the
commit, and all the <code>file2</code> files refer to files after the commit.
It is incorrect to apply each change to each file sequentially.  For
example, this patch will swap a and b:</p>
<div class="literalblock">
<div class="content">
<pre>diff --git a/a b/b
rename from a
rename to b
diff --git a/b b/a
rename from b
rename to a</pre>
</div>
</div>
</li>
<li>
<p>Hunk headers mention the name of the function to which the hunk
applies.  See "Defining a custom hunk-header" in
<a href="gitattributes.html">gitattributes(5)</a> for details of how to tailor this to
specific languages.</p>
</li>
</ol>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_combined_diff_format">Combined diff format</h2>
<div class="sectionbody">
<div class="paragraph">
<p>Any diff-generating command can take the <code>-c</code> or <code>--cc</code> option to
produce a <em>combined diff</em> when showing a merge. This is the default
format when showing merges with <a href="git-diff.html">git-diff(1)</a> or
<a href="git-show.html">git-show(1)</a>. Note also that you can give suitable
<code>--diff-merges</code> option to any of these commands to force generation of
diffs in a specific format.</p>
</div>
<div class="paragraph">
<p>A "combined diff" format looks like this:</p>
</div>
<div class="listingblock">
<div class="content">
<pre>diff --combined describe.c
index fabadb8,cc95eb0..4866510
--- a/describe.c
+++ b/describe.c
@@@ -98,20 -98,12 +98,20 @@@
        return (a_date &gt; b_date) ? -1 : (a_date == b_date) ? 0 : 1;
  }

- static void describe(char *arg)
 -static void describe(struct commit *cmit, int last_one)
++static void describe(char *arg, int last_one)
  {
 +      unsigned char sha1[20];
 +      struct commit *cmit;
        struct commit_list *list;
        static int initialized = 0;
        struct commit_name *n;

 +      if (get_sha1(arg, sha1) &lt; 0)
 +              usage(describe_usage);
 +      cmit = lookup_commit_reference(sha1);
 +      if (!cmit)
 +              usage(describe_usage);
 +
        if (!initialized) {
                initialized = 1;
                for_each_ref(get_name);</pre>
</div>
</div>
<div class="olist arabic">
<ol class="arabic">
<li>
<p>It is preceded by a "git diff" header, that looks like
this (when the <code>-c</code> option is used):</p>
<div class="literalblock">
<div class="content">
<pre>diff --combined file</pre>
</div>
</div>
<div class="paragraph">
<p>or like this (when the <code>--cc</code> option is used):</p>
</div>
<div class="literalblock">
<div class="content">
<pre>diff --cc file</pre>
</div>
</div>
</li>
<li>
<p>It is followed by one or more extended header lines
(this example shows a merge with two parents):</p>
<div class="verseblock">
<pre class="content"><code>index</code> <em>&lt;hash&gt;</em><code>,</code><em>&lt;hash&gt;</em><code>..</code><em>&lt;hash&gt;</em>
<code>mode</code> <em>&lt;mode&gt;</em><code>,</code><em>&lt;mode&gt;</em><code>..</code><em>&lt;mode&gt;</em>
<code>new</code> <code>file</code> <code>mode</code> <em>&lt;mode&gt;</em>
<code>deleted</code> <code>file</code> <code>mode</code> <em>&lt;mode&gt;</em><code>,</code><em>&lt;mode&gt;</em></pre>
</div>
<div class="paragraph">
<p>The <code>mode</code> <em>&lt;mode&gt;</em><code>,</code><em>&lt;mode&gt;</em><code>..</code><em>&lt;mode&gt;</em> line appears only if at least one of
the &lt;mode&gt; is different from the rest. Extended headers with
information about detected content movement (renames and
copying detection) are designed to work with the diff of two
<em>&lt;tree-ish&gt;</em> and are not used by combined diff format.</p>
</div>
</li>
<li>
<p>It is followed by a two-line from-file/to-file header:</p>
<div class="literalblock">
<div class="content">
<pre>--- a/file
+++ b/file</pre>
</div>
</div>
<div class="paragraph">
<p>Similar to the two-line header for the traditional <em>unified</em> diff
format, <code>/dev/null</code> is used to signal created or deleted
files.</p>
</div>
<div class="paragraph">
<p>However, if the --combined-all-paths option is provided, instead of a
two-line from-file/to-file, you get an N+1 line from-file/to-file header,
where N is the number of parents in the merge commit:</p>
</div>
<div class="literalblock">
<div class="content">
<pre>--- a/file
--- a/file
--- a/file
+++ b/file</pre>
</div>
</div>
<div class="paragraph">
<p>This extended format can be useful if rename or copy detection is
active, to allow you to see the original name of the file in different
parents.</p>
</div>
</li>
<li>
<p>Chunk header format is modified to prevent people from
accidentally feeding it to <code>patch</code> <code>-p1</code>. Combined diff format
was created for review of merge commit changes, and was not
meant to be applied. The change is similar to the change in the
extended <em>index</em> header:</p>
<div class="literalblock">
<div class="content">
<pre>@@@ &lt;from-file-range&gt; &lt;from-file-range&gt; &lt;to-file-range&gt; @@@</pre>
</div>
</div>
<div class="paragraph">
<p>There are (number of parents + 1) <code>@</code> characters in the chunk
header for combined diff format.</p>
</div>
</li>
</ol>
</div>
<div class="paragraph">
<p>Unlike the traditional <em>unified</em> diff format, which shows two
files A and B with a single column that has <code>-</code> (minus&#8201;&#8212;&#8201;appears in A but removed in B), <code>+</code> (plus&#8201;&#8212;&#8201;missing in A but
added to B), or " " (space&#8201;&#8212;&#8201;unchanged) prefix, this format
compares two or more files file1, file2,&#8230;&#8203; with one file X, and
shows how X differs from each of fileN.  One column for each of
fileN is prepended to the output line to note how X&#8217;s line is
different from it.</p>
</div>
<div class="paragraph">
<p>A <code>-</code> character in the column N means that the line appears in
fileN but it does not appear in the result.  A <code>+</code> character
in the column N means that the line appears in the result,
and fileN does not have that line (in other words, the line was
added, from the point of view of that parent).</p>
</div>
<div class="paragraph">
<p>In the above example output, the function signature was changed
from both files (hence two <code>-</code> removals from both file1 and
file2, plus <code>++</code> to mean one line that was added does not appear
in either file1 or file2).  Also, eight other lines are the same
from file1 but do not appear in file2 (hence prefixed with <code>+</code>).</p>
</div>
<div class="paragraph">
<p>When shown by <code>git</code> <code>diff-tree</code> <code>-c</code>, it compares the parents of a
merge commit with the merge result (i.e. file1..fileN are the
parents).  When shown by <code>git</code> <code>diff-files</code> <code>-c</code>, it compares the
two unresolved merge parents with the working tree file
(i.e. file1 is stage 2 aka "our version", file2 is stage 3 aka
"their version").</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_other_diff_formats">other diff formats</h2>
<div class="sectionbody">
<div class="paragraph">
<p>The <code>--summary</code> option describes newly added, deleted, renamed and
copied files.  The <code>--stat</code> option adds <code>diffstat</code>(1) graph to the
output.  These options can be combined with other options, such as
<code>-p</code>, and are meant for human consumption.</p>
</div>
<div class="paragraph">
<p>When showing a change that involves a rename or a copy, <code>--stat</code> output
formats the pathnames compactly by combining common prefix and suffix of
the pathnames.  For example, a change that moves <code>arch/i386/Makefile</code> to
<code>arch/x86/Makefile</code> while modifying 4 lines will be shown like this:</p>
</div>
<div class="listingblock">
<div class="content">
<pre>arch/{i386 =&gt; x86}/Makefile    |   4 +--</pre>
</div>
</div>
<div class="paragraph">
<p>The <code>--numstat</code> option gives the diffstat(1) information but is designed
for easier machine consumption.  An entry in <code>--numstat</code> output looks
like this:</p>
</div>
<div class="listingblock">
<div class="content">
<pre>1       2       README
3       1       arch/{i386 =&gt; x86}/Makefile</pre>
</div>
</div>
<div class="paragraph">
<p>That is, from left to right:</p>
</div>
<div class="olist arabic">
<ol class="arabic">
<li>
<p>the number of added lines;</p>
</li>
<li>
<p>a tab;</p>
</li>
<li>
<p>the number of deleted lines;</p>
</li>
<li>
<p>a tab;</p>
</li>
<li>
<p>pathname (possibly with rename/copy information);</p>
</li>
<li>
<p>a newline.</p>
</li>
</ol>
</div>
<div class="paragraph">
<p>When <code>-z</code> output option is in effect, the output is formatted this way:</p>
</div>
<div class="listingblock">
<div class="content">
<pre>1       2       README NUL
3       1       NUL arch/i386/Makefile NUL arch/x86/Makefile NUL</pre>
</div>
</div>
<div class="paragraph">
<p>That is:</p>
</div>
<div class="olist arabic">
<ol class="arabic">
<li>
<p>the number of added lines;</p>
</li>
<li>
<p>a tab;</p>
</li>
<li>
<p>the number of deleted lines;</p>
</li>
<li>
<p>a tab;</p>
</li>
<li>
<p>a NUL (only exists if renamed/copied);</p>
</li>
<li>
<p>pathname in preimage;</p>
</li>
<li>
<p>a NUL (only exists if renamed/copied);</p>
</li>
<li>
<p>pathname in postimage (only exists if renamed/copied);</p>
</li>
<li>
<p>a NUL.</p>
</li>
</ol>
</div>
<div class="paragraph">
<p>The extra <code>NUL</code> before the preimage path in renamed case is to allow
scripts that read the output to tell if the current record being read is
a single-path record or a rename/copy record without reading ahead.
After reading added and deleted lines, reading up to <code>NUL</code> would yield
the pathname, but if that is <code>NUL</code>, the record will show two paths.</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_examples">EXAMPLES</h2>
<div class="sectionbody">
<div class="dlist">
<dl>
<dt class="hdlist1">Various ways to check your working tree</dt>
<dd>
<div class="listingblock">
<div class="content">
<pre>$ git diff            <b class="conum">(1)</b>
$ git diff --cached   <b class="conum">(2)</b>
$ git diff HEAD       <b class="conum">(3)</b>
$ git diff AUTO_MERGE <b class="conum">(4)</b></pre>
</div>
</div>
<div class="colist arabic">
<ol>
<li>
<p>Changes in the working tree not yet staged for the next commit.</p>
</li>
<li>
<p>Changes between the index and your last commit; what you
would be committing if you run <code>git</code> <code>commit</code> without <code>-a</code> option.</p>
</li>
<li>
<p>Changes in the working tree since your last commit; what you
would be committing if you run <code>git</code> <code>commit</code> <code>-a</code></p>
</li>
<li>
<p>Changes in the working tree you&#8217;ve made to resolve textual
conflicts so far.</p>
</li>
</ol>
</div>
</dd>
<dt class="hdlist1">Comparing with arbitrary commits</dt>
<dd>
<div class="listingblock">
<div class="content">
<pre>$ git diff test            <b class="conum">(1)</b>
$ git diff HEAD -- ./test  <b class="conum">(2)</b>
$ git diff HEAD^ HEAD      <b class="conum">(3)</b></pre>
</div>
</div>
<div class="colist arabic">
<ol>
<li>
<p>Instead of using the tip of the current branch, compare with the
tip of "test" branch.</p>
</li>
<li>
<p>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".</p>
</li>
<li>
<p>Compare the version before the last commit and the last commit.</p>
</li>
</ol>
</div>
</dd>
<dt class="hdlist1">Comparing branches</dt>
<dd>
<div class="listingblock">
<div class="content">
<pre>$ git diff topic master    <b class="conum">(1)</b>
$ git diff topic..master   <b class="conum">(2)</b>
$ git diff topic...master  <b class="conum">(3)</b></pre>
</div>
</div>
<div class="colist arabic">
<ol>
<li>
<p>Changes between the tips of the topic and the master branches.</p>
</li>
<li>
<p>Same as above.</p>
</li>
<li>
<p>Changes that occurred on the master branch since when the topic
branch was started off it.</p>
</li>
</ol>
</div>
</dd>
<dt class="hdlist1">Limiting the diff output</dt>
<dd>
<div class="listingblock">
<div class="content">
<pre>$ git diff --diff-filter=MRC            <b class="conum">(1)</b>
$ git diff --name-status                <b class="conum">(2)</b>
$ git diff arch/i386 include/asm-i386   <b class="conum">(3)</b></pre>
</div>
</div>
<div class="colist arabic">
<ol>
<li>
<p>Show only modification, rename, and copy, but not addition
or deletion.</p>
</li>
<li>
<p>Show only names and the nature of change, but not actual
diff output.</p>
</li>
<li>
<p>Limit diff output to named subtrees.</p>
</li>
</ol>
</div>
</dd>
<dt class="hdlist1">Munging the diff output</dt>
<dd>
<div class="listingblock">
<div class="content">
<pre>$ git diff --find-copies-harder -B -C  <b class="conum">(1)</b>
$ git diff -R                          <b class="conum">(2)</b></pre>
</div>
</div>
<div class="colist arabic">
<ol>
<li>
<p>Spend extra cycles to find renames, copies and complete
rewrites (very expensive).</p>
</li>
<li>
<p>Output diff in reverse.</p>
</li>
</ol>
</div>
</dd>
</dl>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_configuration">CONFIGURATION</h2>
<div class="sectionbody">
<div class="paragraph">
<p>Everything below this line in this section is selectively included
from the <a href="git-config.html">git-config(1)</a> documentation. The content is the same
as what&#8217;s found there:</p>
</div>
<div class="dlist">
<dl>
<dt class="hdlist1"><code>diff.autoRefreshIndex</code></dt>
<dd>
<p>When using <code>git</code> <code>diff</code> to compare with work tree
files, do not consider stat-only changes as changed.
Instead, silently run <code>git</code> <code>update-index</code> <code>--refresh</code> to
update the cached stat information for paths whose
contents in the work tree match the contents in the
index.  This option defaults to <code>true</code>.  Note that this
affects only <code>git</code> <code>diff</code> Porcelain, and not lower level
<code>diff</code> commands such as <code>git</code> <code>diff-files</code>.</p>
</dd>
<dt class="hdlist1"><code>diff.dirstat</code></dt>
<dd>
<p>A comma separated list of <code>--dirstat</code> parameters specifying the
default behavior of the <code>--dirstat</code> option to <code>git</code> <code>diff</code> and friends.
The defaults can be overridden on the command line
(using <code>--dirstat=</code><em>&lt;param&gt;</em><code>,..</code>.). The fallback defaults
(when not changed by <code>diff.dirstat</code>) are <code>changes,noncumulative,3</code>.
The following parameters are available:</p>
<div class="openblock">
<div class="content">
<div class="dlist">
<dl>
<dt class="hdlist1"><code>changes</code></dt>
<dd>
<p>Compute the dirstat numbers by counting the lines that have been
removed from the source, or added to the destination. This ignores
the amount of pure code movements within a file.  In other words,
rearranging lines in a file is not counted as much as other changes.
This is the default behavior when no parameter is given.</p>
</dd>
<dt class="hdlist1"><code>lines</code></dt>
<dd>
<p>Compute the dirstat numbers by doing the regular line-based diff
analysis, and summing the removed/added line counts. (For binary
files, count 64-byte chunks instead, since binary files have no
natural concept of lines). This is a more expensive <code>--dirstat</code>
behavior than the <code>changes</code> behavior, but it does count rearranged
lines within a file as much as other changes. The resulting output
is consistent with what you get from the other <code>--*stat</code> options.</p>
</dd>
<dt class="hdlist1"><code>files</code></dt>
<dd>
<p>Compute the dirstat numbers by counting the number of files changed.
Each changed file counts equally in the dirstat analysis. This is
the computationally cheapest <code>--dirstat</code> behavior, since it does
not have to look at the file contents at all.</p>
</dd>
<dt class="hdlist1"><code>cumulative</code></dt>
<dd>
<p>Count changes in a child directory for the parent directory as well.
Note that when using <code>cumulative</code>, the sum of the percentages
reported may exceed 100%. The default (non-cumulative) behavior can
be specified with the <code>noncumulative</code> parameter.</p>
</dd>
<dt class="hdlist1"><em>&lt;limit&gt;</em></dt>
<dd>
<p>An integer parameter specifies a cut-off percent (3% by default).
Directories contributing less than this percentage of the changes
are not shown in the output.</p>
</dd>
</dl>
</div>
</div>
</div>
<div class="paragraph">
<p>Example: The following will count changed files, while ignoring
directories with less than 10% of the total amount of changed files,
and accumulating child directory counts in the parent directories:
<code>files,10,cumulative</code>.</p>
</div>
</dd>
<dt class="hdlist1"><code>diff.statNameWidth</code></dt>
<dd>
<p>Limit the width of the filename part in <code>--stat</code> output. If set, applies
to all commands generating <code>--stat</code> output except <code>format-patch</code>.</p>
</dd>
<dt class="hdlist1"><code>diff.statGraphWidth</code></dt>
<dd>
<p>Limit the width of the graph part in <code>--stat</code> output. If set, applies
to all commands generating <code>--stat</code> output except <code>format-patch</code>.</p>
</dd>
<dt class="hdlist1"><code>diff.context</code></dt>
<dd>
<p>Generate diffs with <em>&lt;n&gt;</em> lines of context instead of the default
of 3. This value is overridden by the <code>-U</code> option.</p>
</dd>
<dt class="hdlist1"><code>diff.interHunkContext</code></dt>
<dd>
<p>Show the context between diff hunks, up to the specified number
of lines, thereby fusing the hunks that are close to each other.
This value serves as the default for the <code>--inter-hunk-context</code>
command line option.</p>
</dd>
<dt class="hdlist1"><code>diff.external</code></dt>
<dd>
<p>If this config variable is set, diff generation is not
performed using the internal diff machinery, but using the
given command.  Can be overridden with the <code>GIT_EXTERNAL_DIFF</code>
environment variable.  The command is called with parameters
as described under "git Diffs" in <a href="git.html">git(1)</a>.  Note: if
you want to use an external diff program only on a subset of
your files, you might want to use <a href="gitattributes.html">gitattributes(5)</a> instead.</p>
</dd>
<dt class="hdlist1"><code>diff.trustExitCode</code></dt>
<dd>
<p>If this boolean value is set to <code>true</code> then the
<code>diff.external</code> command is expected to return exit code
0 if it considers the input files to be equal or 1 if it
considers them to be different, like <code>diff</code>(1).
If it is set to <code>false</code>, which is the default, then the command
is expected to return exit code <code>0</code> regardless of equality.
Any other exit code causes Git to report a fatal error.</p>
</dd>
<dt class="hdlist1"><code>diff.ignoreSubmodules</code></dt>
<dd>
<p>Sets the default value of <code>--ignore-submodules</code>. Note that this
affects only <code>git</code> <code>diff</code> Porcelain, and not lower level <code>diff</code>
commands such as <code>git</code> <code>diff-files</code>. <code>git</code> <code>checkout</code>
and <code>git</code> <code>switch</code> also honor
this setting when reporting uncommitted changes. Setting it to
<code>all</code> disables the submodule summary normally shown by <code>git</code> <code>commit</code>
and <code>git</code> <code>status</code> when <code>status.submoduleSummary</code> is set unless it is
overridden by using the <code>--ignore-submodules</code> command-line option.
The <code>git</code> <code>submodule</code> commands are not affected by this setting.
By default this is set to untracked so that any untracked
submodules are ignored.</p>
</dd>
<dt class="hdlist1"><code>diff.mnemonicPrefix</code></dt>
<dd>
<p>If set, <code>git</code> <code>diff</code> uses a prefix pair that is different from the
standard <code>a/</code> and <code>b/</code> depending on what is being compared.  When
this configuration is in effect, reverse diff output also swaps
the order of the prefixes:</p>
<div class="dlist">
<dl>
<dt class="hdlist1"><code>git</code> <code>diff</code></dt>
<dd>
<p>compares the (i)ndex and the (w)ork tree;</p>
</dd>
<dt class="hdlist1"><code>git</code> <code>diff</code> <code>HEAD</code></dt>
<dd>
<p>compares a (c)ommit and the (w)ork tree;</p>
</dd>
<dt class="hdlist1"><code>git</code> <code>diff</code> <code>--cached</code></dt>
<dd>
<p>compares a (c)ommit and the (i)ndex;</p>
</dd>
<dt class="hdlist1"><code>git</code> <code>diff</code> <code>HEAD:</code><em>&lt;file1&gt;</em> <em>&lt;file2&gt;</em></dt>
<dd>
<p>compares an (o)bject and a (w)ork tree entity;</p>
</dd>
<dt class="hdlist1"><code>git</code> <code>diff</code> <code>--no-index</code> <em>&lt;a&gt;</em> <em>&lt;b&gt;</em></dt>
<dd>
<p>compares two non-git things <em>&lt;a&gt;</em> and <em>&lt;b&gt;</em>.</p>
</dd>
</dl>
</div>
</dd>
<dt class="hdlist1"><code>diff.noPrefix</code></dt>
<dd>
<p>If set, <code>git</code> <code>diff</code> does not show any source or destination prefix.</p>
</dd>
<dt class="hdlist1"><code>diff.srcPrefix</code></dt>
<dd>
<p>If set, <code>git</code> <code>diff</code> uses this source prefix. Defaults to <code>a/</code>.</p>
</dd>
<dt class="hdlist1"><code>diff.dstPrefix</code></dt>
<dd>
<p>If set, <code>git</code> <code>diff</code> uses this destination prefix. Defaults to <code>b/</code>.</p>
</dd>
<dt class="hdlist1"><code>diff.relative</code></dt>
<dd>
<p>If set to <code>true</code>, <code>git</code> <code>diff</code> does not show changes outside of the directory
and show pathnames relative to the current directory.</p>
</dd>
<dt class="hdlist1"><code>diff.orderFile</code></dt>
<dd>
<p>File indicating how to order files within a diff.
See the <code>-O</code> option for details.
If <code>diff.orderFile</code> is a relative pathname, it is treated as
relative to the top of the working tree.</p>
</dd>
<dt class="hdlist1"><code>diff.renameLimit</code></dt>
<dd>
<p>The number of files to consider in the exhaustive portion of
copy/rename detection; equivalent to the <code>git</code> <code>diff</code> option
<code>-l</code>.  If not set, the default value is currently 1000.  This
setting has no effect if rename detection is turned off.</p>
</dd>
<dt class="hdlist1"><code>diff.renames</code></dt>
<dd>
<p>Whether and how Git detects renames.  If set to <code>false</code>,
rename detection is disabled. If set to <code>true</code>, basic rename
detection is enabled.  If set to <code>copies</code> or <code>copy</code>, Git will
detect copies, as well.  Defaults to <code>true</code>.  Note that this
affects only <code>git</code> <code>diff</code> Porcelain like <a href="git-diff.html">git-diff(1)</a> and
<a href="git-log.html">git-log(1)</a>, and not lower level commands such as
<a href="git-diff-files.html">git-diff-files(1)</a>.</p>
</dd>
<dt class="hdlist1"><code>diff.suppressBlankEmpty</code></dt>
<dd>
<p>A boolean to inhibit the standard behavior of printing a space
before each empty output line. Defaults to <code>false</code>.</p>
</dd>
<dt class="hdlist1"><code>diff.submodule</code></dt>
<dd>
<p>Specify the format in which differences in submodules are
shown.  The <code>short</code> format just shows the names of the commits
at the beginning and end of the range. The <code>log</code> format lists
the commits in the range like <a href="git-submodule.html">git-submodule(1)</a> <code>summary</code>
does. The <code>diff</code> format shows an inline diff of the changed
contents of the submodule. Defaults to <code>short</code>.</p>
</dd>
<dt class="hdlist1"><code>diff.wordRegex</code></dt>
<dd>
<p>A POSIX Extended Regular Expression used to determine what is a "word"
when performing word-by-word difference calculations.  Character
sequences that match the regular expression are "words", all other
characters are <strong>ignorable</strong> whitespace.</p>
</dd>
<dt class="hdlist1"><code>diff.</code><em>&lt;driver&gt;</em><code>.command</code></dt>
<dd>
<p>The custom diff driver command.  See <a href="gitattributes.html">gitattributes(5)</a>
for details.</p>
</dd>
<dt class="hdlist1"><code>diff.</code><em>&lt;driver&gt;</em><code>.trustExitCode</code></dt>
<dd>
<p>If this boolean value is set to <code>true</code> then the
<code>diff.</code><em>&lt;driver&gt;</em><code>.command</code> command is expected to return exit code
0 if it considers the input files to be equal or 1 if it
considers them to be different, like <code>diff</code>(1).
If it is set to <code>false</code>, which is the default, then the command
is expected to return exit code 0 regardless of equality.
Any other exit code causes Git to report a fatal error.</p>
</dd>
<dt class="hdlist1"><code>diff.</code><em>&lt;driver&gt;</em><code>.xfuncname</code></dt>
<dd>
<p>The regular expression that the diff driver should use to
recognize the hunk header.  A built-in pattern may also be used.
See <a href="gitattributes.html">gitattributes(5)</a> for details.</p>
</dd>
<dt class="hdlist1"><code>diff.</code><em>&lt;driver&gt;</em><code>.binary</code></dt>
<dd>
<p>Set this option to <code>true</code> to make the diff driver treat files as
binary.  See <a href="gitattributes.html">gitattributes(5)</a> for details.</p>
</dd>
<dt class="hdlist1"><code>diff.</code><em>&lt;driver&gt;</em><code>.textconv</code></dt>
<dd>
<p>The command that the diff driver should call to generate the
text-converted version of a file.  The result of the
conversion is used to generate a human-readable diff.  See
<a href="gitattributes.html">gitattributes(5)</a> for details.</p>
</dd>
<dt class="hdlist1"><code>diff.</code><em>&lt;driver&gt;</em><code>.wordRegex</code></dt>
<dd>
<p>The regular expression that the diff driver should use to
split words in a line.  See <a href="gitattributes.html">gitattributes(5)</a> for
details.</p>
</dd>
<dt class="hdlist1"><code>diff.</code><em>&lt;driver&gt;</em><code>.cachetextconv</code></dt>
<dd>
<p>Set this option to <code>true</code> to make the diff driver cache the text
conversion outputs.  See <a href="gitattributes.html">gitattributes(5)</a> for details.</p>
</dd>
<dt class="hdlist1"><code>diff.indentHeuristic</code></dt>
<dd>
<p>Set this option to <code>false</code> to disable the default heuristics
that shift diff hunk boundaries to make patches easier to read.</p>
</dd>
<dt class="hdlist1"><code>diff.algorithm</code></dt>
<dd>
<p>Choose a diff algorithm.  The variants are as follows:</p>
<div class="openblock">
<div class="content">
<div class="dlist">
<dl>
<dt class="hdlist1"><code>default</code></dt>
<dt class="hdlist1"><code>myers</code></dt>
<dd>
<p>The basic greedy diff algorithm. Currently, this is the default.</p>
</dd>
<dt class="hdlist1"><code>minimal</code></dt>
<dd>
<p>Spend extra time to make sure the smallest possible diff is
produced.</p>
</dd>
<dt class="hdlist1"><code>patience</code></dt>
<dd>
<p>Use "patience diff" algorithm when generating patches.</p>
</dd>
<dt class="hdlist1"><code>histogram</code></dt>
<dd>
<p>This algorithm extends the patience algorithm to "support
low-occurrence common elements".</p>
</dd>
</dl>
</div>
</div>
</div>
</dd>
<dt class="hdlist1"><code>diff.wsErrorHighlight</code></dt>
<dd>
<p>Highlight whitespace errors in the <code>context</code>, <code>old</code> or <code>new</code>
lines of the diff.  Multiple values are separated by comma,
<code>none</code> resets previous values, <code>default</code> reset the list to
<code>new</code> and <code>all</code> is a shorthand for <code>old,new,context</code>.  The
whitespace errors are colored with <code>color.diff.whitespace</code>.
The command line option <code>--ws-error-highlight=</code><em>&lt;kind&gt;</em>
overrides this setting.</p>
</dd>
<dt class="hdlist1"><code>diff.colorMoved</code></dt>
<dd>
<p>If set to either a valid <em>&lt;mode&gt;</em> or a <code>true</code> value, moved lines
in a diff are colored differently.
For details of valid modes see <code>--color-moved</code>.
If simply set to <code>true</code> the default color mode will be used. When
set to <code>false</code>, moved lines are not colored.</p>
</dd>
<dt class="hdlist1"><code>diff.colorMovedWS</code></dt>
<dd>
<p>When moved lines are colored using e.g. the <code>diff.colorMoved</code> setting,
this option controls the mode how spaces are treated.
For details of valid modes see <code>--color-moved-ws</code> in <a href="git-diff.html">git-diff(1)</a>.</p>
</dd>
</dl>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_see_also">SEE ALSO</h2>
<div class="sectionbody">
<div class="paragraph">
<p><code>diff</code>(1),
<a href="git-difftool.html">git-difftool(1)</a>,
<a href="git-log.html">git-log(1)</a>,
<a href="gitdiffcore.html">gitdiffcore(7)</a>,
<a href="git-format-patch.html">git-format-patch(1)</a>,
<a href="git-apply.html">git-apply(1)</a>,
<a href="git-show.html">git-show(1)</a></p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_git">GIT</h2>
<div class="sectionbody">
<div class="paragraph">
<p>Part of the <a href="git.html">git(1)</a> suite</p>
</div>
</div>
</div>
</div>
<div id="footer">
<div id="footer-text">
Last updated 2025-06-25 03:24:02 +0900
</div>
</div>
</body>
</html>