<!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-log(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-log(1) Manual Page</h1>
<h2 id="_name">NAME</h2>
<div class="sectionbody">
<p>git-log - Show commit logs</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>log</code> [<em>&lt;options&gt;</em>] [<em>&lt;revision-range&gt;</em>] [[<code>--</code>] <em>&lt;path&gt;</em>&#8230;&#8203;]</pre>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_description">DESCRIPTION</h2>
<div class="sectionbody">
<div class="paragraph">
<p>Shows the commit logs.</p>
</div>
<div class="paragraph">
<p>List commits that are reachable by following the <code>parent</code> links from the
given commit(s), but exclude commits that are reachable from the one(s)
given with a <em>^</em> in front of them.  The output is given in reverse
chronological order by default.</p>
</div>
<div class="paragraph">
<p>You can think of this as a set operation. Commits reachable from any of
the commits given on the command line form a set, and then commits reachable
from any of the ones given with <em>^</em> in front are subtracted from that
set.  The remaining commits are what comes out in the command&#8217;s output.
Various other options and paths parameters can be used to further limit the
result.</p>
</div>
<div class="paragraph">
<p>Thus, the following command:</p>
</div>
<div class="listingblock">
<div class="content">
<pre>$ git log foo bar ^baz</pre>
</div>
</div>
<div class="paragraph">
<p>means "list all the commits which are reachable from <em>foo</em> or <em>bar</em>, but
not from <em>baz</em>".</p>
</div>
<div class="paragraph">
<p>A special notation "<em>&lt;commit1&gt;</em><code>..</code><em>&lt;commit2&gt;</em>" can be used as a
short-hand for "<code>^</code><em>&lt;commit1&gt;</em> <em>&lt;commit2&gt;</em>". For example, either of
the following may be used interchangeably:</p>
</div>
<div class="listingblock">
<div class="content">
<pre>$ git log origin..HEAD
$ git log HEAD ^origin</pre>
</div>
</div>
<div class="paragraph">
<p>Another special notation is "<em>&lt;commit1&gt;</em><code>...</code><em>&lt;commit2&gt;</em>" which is useful
for merges.  The resulting set of commits is the symmetric difference
between the two operands.  The following two commands are equivalent:</p>
</div>
<div class="listingblock">
<div class="content">
<pre>$ git log A B --not $(git merge-base --all A B)
$ git log A...B</pre>
</div>
</div>
<div class="paragraph">
<p>The command takes options applicable to the <a href="git-rev-list.html">git-rev-list(1)</a>
command to control what is shown and how, and options applicable to
the <a href="git-diff.html">git-diff(1)</a> command to control how the changes
each commit introduces are shown.</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_options">OPTIONS</h2>
<div class="sectionbody">
<div class="dlist">
<dl>
<dt class="hdlist1"><code>--follow</code></dt>
<dd>
<p>Continue listing the history of a file beyond renames
(works only for a single file).</p>
</dd>
<dt class="hdlist1"><code>--no-decorate</code></dt>
<dt class="hdlist1"><code>--decorate</code>[<code>=</code>(<code>short</code>|<code>full</code>|<code>auto</code>|<code>no</code>)]</dt>
<dd>
<p>Print out the ref names of any commits that are shown. Possible values
are:</p>
<div class="openblock">
<div class="content">
<div class="dlist">
<dl>
<dt class="hdlist1"><code>short</code></dt>
<dd>
<p>the ref name prefixes <code>refs/heads/</code>, <code>refs/tags/</code> and
<code>refs/remotes/</code> are not printed.</p>
</dd>
<dt class="hdlist1"><code>full</code></dt>
<dd>
<p>the full ref name (including prefix) is printed.</p>
</dd>
<dt class="hdlist1"><code>auto</code></dt>
<dd>
<p>if the output is going to a terminal, the ref names
are shown as if <code>short</code> were given, otherwise no ref names are
shown.</p>
</dd>
</dl>
</div>
</div>
</div>
<div class="paragraph">
<p>The option <code>--decorate</code> is short-hand for <code>--decorate=short</code>. Default to
configuration value of <code>log.decorate</code> if configured, otherwise, <code>auto</code>.</p>
</div>
</dd>
<dt class="hdlist1"><code>--decorate-refs=</code><em>&lt;pattern&gt;</em></dt>
<dt class="hdlist1"><code>--decorate-refs-exclude=</code><em>&lt;pattern&gt;</em></dt>
<dd>
<p>For each candidate reference, do not use it for decoration if it
matches any of the <em>&lt;pattern&gt;</em> parameters given to
<code>--decorate-refs-exclude</code> or if it doesn&#8217;t match any of the
<em>&lt;pattern&gt;</em> parameters given to <code>--decorate-refs</code>.
The <code>log.excludeDecoration</code> config option allows excluding refs from
the decorations, but an explicit <code>--decorate-refs</code> pattern will
override a match in <code>log.excludeDecoration</code>.</p>
<div class="paragraph">
<p>If none of these options or config settings are given, then references are
used as decoration if they match <code>HEAD</code>, <code>refs/heads/</code>, <code>refs/remotes/</code>,
<code>refs/stash/</code>, or <code>refs/tags/</code>.</p>
</div>
</dd>
<dt class="hdlist1"><code>--clear-decorations</code></dt>
<dd>
<p>When specified, this option clears all previous <code>--decorate-refs</code>
or <code>--decorate-refs-exclude</code> options and relaxes the default
decoration filter to include all references. This option is
assumed if the config value <code>log.initialDecorationSet</code> is set to
<code>all</code>.</p>
</dd>
<dt class="hdlist1"><code>--source</code></dt>
<dd>
<p>Print out the ref name given on the command line by which each
commit was reached.</p>
</dd>
<dt class="hdlist1"><code>--mailmap</code></dt>
<dt class="hdlist1"><code>--no-mailmap</code></dt>
<dt class="hdlist1"><code>--use-mailmap</code></dt>
<dt class="hdlist1"><code>--no-use-mailmap</code></dt>
<dd>
<p>Use mailmap file to map author and committer names and email
addresses to canonical real names and email addresses. See
<a href="git-shortlog.html">git-shortlog(1)</a>.</p>
</dd>
<dt class="hdlist1"><code>--full-diff</code></dt>
<dd>
<p>Without this flag, <code>git</code> <code>log</code> <code>-p</code> <em>&lt;path&gt;</em>... shows commits that
touch the specified paths, and diffs about the same specified
paths.  With this, the full diff is shown for commits that touch
the specified paths; this means that "<em>&lt;path&gt;</em>..." limits only
commits, and doesn&#8217;t limit diff for those commits.</p>
<div class="paragraph">
<p>Note that this affects all diff-based output types, e.g. those
produced by <code>--stat</code>, etc.</p>
</div>
</dd>
<dt class="hdlist1"><code>--log-size</code></dt>
<dd>
<p>Include a line <code>log</code> <code>size</code> <em>&lt;number&gt;</em> in the output for each commit,
where <em>&lt;number&gt;</em> is the length of that commit&#8217;s message in bytes.
Intended to speed up tools that read log messages from <code>git</code> <code>log</code>
output by allowing them to allocate space in advance.</p>
</dd>
<dt class="hdlist1"><code>-L</code><em>&lt;start&gt;</em><code>,</code><em>&lt;end&gt;</em><code>:</code><em>&lt;file&gt;</em></dt>
<dt class="hdlist1"><code>-L:</code><em>&lt;funcname&gt;</em><code>:</code><em>&lt;file&gt;</em></dt>
<dd>
<p>Trace the evolution of the line range given by <em>&lt;start&gt;</em><code>,</code><em>&lt;end&gt;</em>,
or by the function name regex <em>&lt;funcname&gt;</em>, within the <em>&lt;file&gt;</em>. You may
not give any pathspec limiters.  This is currently limited to
a walk starting from a single revision, i.e., you may only
give zero or one positive revision arguments, and
<em>&lt;start&gt;</em> and <em>&lt;end&gt;</em> (or <em>&lt;funcname&gt;</em>) must exist in the starting revision.
You can specify this option more than once. Implies <code>--patch</code>.
Patch output can be suppressed using <code>--no-patch</code>.
Non-patch diff formats <code>--raw</code>, <code>--name-only</code>, <code>--name-status</code>,
and <code>--summary</code> are supported.  Diff stat formats
(<code>--stat</code>, <code>--numstat</code>, <code>--shortstat</code>, <code>--dirstat</code>) are not
currently implemented.</p>
<div class="paragraph">
<p>Patch formatting options such as <code>--word-diff</code>, <code>--color-moved</code>,
<code>--no-prefix</code>, and whitespace options (<code>-w</code>, <code>-b</code>) are supported,
as are pickaxe options (<code>-S</code>, <code>-G</code>) and <code>--diff-filter</code>.</p>
</div>
<div class="paragraph">
<p><em>&lt;start&gt;</em> and <em>&lt;end&gt;</em> can take one of these forms:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><em>&lt;number&gt;</em></p>
<div class="paragraph">
<p>If <em>&lt;start&gt;</em> or <em>&lt;end&gt;</em> is a number, it specifies an
absolute line number (lines count from 1).</p>
</div>
</li>
<li>
<p><code>/</code><em>&lt;regex&gt;</em><code>/</code></p>
<div class="paragraph">
<p>This form will use the first line matching the given
POSIX <em>&lt;regex&gt;</em>. If <em>&lt;start&gt;</em> is a regex, it will search from the end of
the previous <code>-L</code> range, if any, otherwise from the start of file.
If <em>&lt;start&gt;</em> is <code>^/</code><em>&lt;regex&gt;</em><code>/</code>, it will search from the start of file.
If <em>&lt;end&gt;</em> is a regex, it will search starting at the line given by
<em>&lt;start&gt;</em>.</p>
</div>
</li>
<li>
<p><code>+</code><em>&lt;offset&gt;</em> or <code>-</code><em>&lt;offset&gt;</em></p>
<div class="paragraph">
<p>This is only valid for <em>&lt;end&gt;</em> and will specify a number
of lines before or after the line given by <em>&lt;start&gt;</em>.</p>
</div>
</li>
</ul>
</div>
<div class="paragraph">
<p>If <code>:</code><em>&lt;funcname&gt;</em> is given in place of <em>&lt;start&gt;</em> and <em>&lt;end&gt;</em>, it is a
regular expression that denotes the range from the first funcname line
that matches <em>&lt;funcname&gt;</em>, up to the next funcname line. <code>:</code><em>&lt;funcname&gt;</em>
searches from the end of the previous <code>-L</code> range, if any, otherwise
from the start of file. <code>^:</code><em>&lt;funcname&gt;</em> searches from the start of
file. The function names are determined in the same way as <code>git</code> <code>diff</code>
works out patch hunk headers (see <em>Defining a custom hunk-header</em>
in <a href="gitattributes.html">gitattributes(5)</a>).</p>
</div>
</dd>
<dt class="hdlist1"><em>&lt;revision-range&gt;</em></dt>
<dd>
<p>Show only commits in the specified revision range.  When no
<em>&lt;revision-range&gt;</em> is specified, it defaults to <code>HEAD</code> (i.e. the
whole history leading to the current commit).  <code>origin</code><code>..</code><code>HEAD</code>
specifies all the commits reachable from the current commit
(i.e. <code>HEAD</code>), but not from <code>origin</code>. For a complete list of
ways to spell <em>&lt;revision-range&gt;</em>, see the <em>Specifying Ranges</em>
section of <a href="gitrevisions.html">gitrevisions(7)</a>.</p>
</dd>
<dt class="hdlist1">[<code>--</code>] <em>&lt;path&gt;</em>...</dt>
<dd>
<p>Show only commits that are enough to explain how the files
that match the specified paths came to be.  See <em>History
Simplification</em> below for details and other simplification
modes.</p>
<div class="paragraph">
<p>Paths may need to be prefixed with <code>--</code> to separate them from
options or the revision range, when confusion arises.</p>
</div>
</dd>
</dl>
</div>
<div class="sect2">
<h3 id="_commit_limiting">Commit Limiting</h3>
<div class="paragraph">
<p>Besides specifying a range of commits that should be listed using the
special notations explained in the description, additional commit
limiting may be applied.</p>
</div>
<div class="paragraph">
<p>Using more options generally further limits the output (e.g.
<code>--since=</code><em>&lt;date1&gt;</em> limits to commits newer than <em>&lt;date1&gt;</em>, and using it
with <code>--grep=</code><em>&lt;pattern&gt;</em> further limits to commits whose log message
has a line that matches <em>&lt;pattern&gt;</em>), unless otherwise noted.</p>
</div>
<div class="paragraph">
<p>Note that these are applied before commit
ordering and formatting options, such as <code>--reverse</code>.</p>
</div>
<div class="dlist">
<dl>
<dt class="hdlist1"><code>-</code><em>&lt;number&gt;</em></dt>
<dt class="hdlist1"><code>-n</code> <em>&lt;number&gt;</em></dt>
<dt class="hdlist1"><code>--max-count=</code><em>&lt;number&gt;</em></dt>
<dd>
<p>Limit the output to the first <em>&lt;number&gt;</em> commits that would be shown.</p>
</dd>
<dt class="hdlist1"><code>--max-count-oldest=</code><em>&lt;number&gt;</em></dt>
<dd>
<p>Limit the output to the last <em>&lt;number&gt;</em> commits that would be shown.</p>
</dd>
<dt class="hdlist1"><code>--skip=</code><em>&lt;number&gt;</em></dt>
<dd>
<p>Skip <em>&lt;number&gt;</em> commits before starting to show the commit output.</p>
</dd>
<dt class="hdlist1"><code>--since=</code><em>&lt;date&gt;</em></dt>
<dt class="hdlist1"><code>--after=</code><em>&lt;date&gt;</em></dt>
<dd>
<p>Show commits more recent than <em>&lt;date&gt;</em>.  As a special case,
<em>today</em> means the last midnight.</p>
</dd>
<dt class="hdlist1"><code>--since-as-filter=</code><em>&lt;date&gt;</em></dt>
<dd>
<p>Show all commits more recent than <em>&lt;date&gt;</em>. This visits
all commits in the range, rather than stopping at the first commit which
is older than <em>&lt;date&gt;</em>.</p>
</dd>
<dt class="hdlist1"><code>--until=</code><em>&lt;date&gt;</em></dt>
<dt class="hdlist1"><code>--before=</code><em>&lt;date&gt;</em></dt>
<dd>
<p>Show commits older than <em>&lt;date&gt;</em>.</p>
</dd>
<dt class="hdlist1"><code>--author=</code><em>&lt;pattern&gt;</em></dt>
<dt class="hdlist1"><code>--committer=</code><em>&lt;pattern&gt;</em></dt>
<dd>
<p>Limit the commits output to ones with author/committer
header lines that match the <em>&lt;pattern&gt;</em> regular
expression.  With more than one <code>--author=</code><em>&lt;pattern&gt;</em>,
commits whose author matches any of the <em>&lt;pattern&gt;</em> are
chosen (similarly for multiple <code>--committer=</code><em>&lt;pattern&gt;</em>).</p>
</dd>
<dt class="hdlist1"><code>--grep-reflog=</code><em>&lt;pattern&gt;</em></dt>
<dd>
<p>Limit the commits output to ones with reflog entries that
match the <em>&lt;pattern&gt;</em> regular expression. With
more than one <code>--grep-reflog</code>, commits whose reflog message
matches any of the given patterns are chosen.  It is an
error to use this option unless <code>--walk-reflogs</code> is in use.</p>
</dd>
<dt class="hdlist1"><code>--grep=</code><em>&lt;pattern&gt;</em></dt>
<dd>
<p>Limit the commits output to ones with a log message that
matches the <em>&lt;pattern&gt;</em> regular expression.  With
more than one <code>--grep=</code><em>&lt;pattern&gt;</em>, commits whose message
matches any of the <em>&lt;pattern&gt;</em> are chosen (but see
<code>--all-match</code>).</p>
<div class="paragraph">
<p>When <code>--notes</code> is in effect, the message from the notes is
matched as if it were part of the log message.</p>
</div>
</dd>
<dt class="hdlist1"><code>--all-match</code></dt>
<dd>
<p>Limit the commits output to ones that match all given <code>--grep</code>,
instead of ones that match at least one.</p>
</dd>
<dt class="hdlist1"><code>--invert-grep</code></dt>
<dd>
<p>Limit the commits output to ones with a log message that do not
match the <em>&lt;pattern&gt;</em> specified with <code>--grep=</code><em>&lt;pattern&gt;</em>.</p>
</dd>
<dt class="hdlist1"><code>-i</code></dt>
<dt class="hdlist1"><code>--regexp-ignore-case</code></dt>
<dd>
<p>Match the regular expression limiting patterns without regard to letter
case.</p>
</dd>
<dt class="hdlist1"><code>--basic-regexp</code></dt>
<dd>
<p>Consider the limiting patterns to be basic regular expressions;
this is the default.</p>
</dd>
<dt class="hdlist1"><code>-E</code></dt>
<dt class="hdlist1"><code>--extended-regexp</code></dt>
<dd>
<p>Consider the limiting patterns to be extended regular expressions
instead of the default basic regular expressions.</p>
</dd>
<dt class="hdlist1"><code>-F</code></dt>
<dt class="hdlist1"><code>--fixed-strings</code></dt>
<dd>
<p>Consider the limiting patterns to be fixed strings (don&#8217;t interpret
pattern as a regular expression).</p>
</dd>
<dt class="hdlist1"><code>-P</code></dt>
<dt class="hdlist1"><code>--perl-regexp</code></dt>
<dd>
<p>Consider the limiting patterns to be Perl-compatible regular
expressions.</p>
<div class="paragraph">
<p>Support for these types of regular expressions is an optional
compile-time dependency. If Git wasn&#8217;t compiled with support for them
providing this option will cause it to die.</p>
</div>
</dd>
<dt class="hdlist1"><code>--remove-empty</code></dt>
<dd>
<p>Stop when a given path disappears from the tree.</p>
</dd>
<dt class="hdlist1"><code>--merges</code></dt>
<dd>
<p>Print only merge commits. This is exactly the same as <code>--min-parents=2</code>.</p>
</dd>
<dt class="hdlist1"><code>--no-merges</code></dt>
<dd>
<p>Do not print commits with more than one parent. This is
exactly the same as <code>--max-parents=1</code>.</p>
</dd>
<dt class="hdlist1"><code>--min-parents=</code><em>&lt;number&gt;</em></dt>
<dt class="hdlist1"><code>--max-parents=</code><em>&lt;number&gt;</em></dt>
<dt class="hdlist1"><code>--no-min-parents</code></dt>
<dt class="hdlist1"><code>--no-max-parents</code></dt>
<dd>
<p>Show only commits which have at least (or at most) that many parent
commits. In particular, <code>--max-parents=1</code> is the same as <code>--no-merges</code>,
<code>--min-parents=2</code> is the same as <code>--merges</code>.  <code>--max-parents=0</code>
gives all root commits and <code>--min-parents=3</code> all octopus merges.</p>
<div class="paragraph">
<p><code>--no-min-parents</code> and <code>--no-max-parents</code> reset these limits (to no limit)
again.  Equivalent forms are <code>--min-parents=0</code> (any commit has 0 or more
parents) and <code>--max-parents=-1</code> (negative numbers denote no upper limit).</p>
</div>
</dd>
<dt class="hdlist1"><code>--first-parent</code></dt>
<dd>
<p>When finding commits to include, follow only the first
parent commit upon seeing a merge commit.  This option
can give a better overview when viewing the evolution of
a particular topic branch, because merges into a topic
branch tend to be only about adjusting to updated upstream
from time to time, and this option allows you to ignore
the individual commits brought in to your history by such
a merge.</p>
<div class="paragraph">
<p>This option also changes default diff format for merge commits
to <code>first-parent</code>, see <code>--diff-merges=first-parent</code> for details.</p>
</div>
</dd>
<dt class="hdlist1"><code>--exclude-first-parent-only</code></dt>
<dd>
<p>When finding commits to exclude (with a <em>^</em>), follow only
the first parent commit upon seeing a merge commit.
This can be used to find the set of changes in a topic branch
from the point where it diverged from the remote branch, given
that arbitrary merges can be valid topic branch changes.</p>
</dd>
<dt class="hdlist1"><code>--maximal-only</code></dt>
<dd>
<p>Restrict the output commits to be those that are not reachable
from any other commits in the revision range.</p>
</dd>
<dt class="hdlist1"><code>--not</code></dt>
<dd>
<p>Reverses the meaning of the <em>^</em> prefix (or lack thereof)
for all following revision specifiers, up to the next <code>--not</code>.
When used on the command line before --stdin, the revisions passed
through stdin will not be affected by it. Conversely, when passed
via standard input, the revisions passed on the command line will
not be affected by it.</p>
</dd>
<dt class="hdlist1"><code>--all</code></dt>
<dd>
<p>Pretend as if all the refs in <code>refs/</code>, along with <code>HEAD</code>, are
listed on the command line as <em>&lt;commit&gt;</em>.</p>
</dd>
<dt class="hdlist1"><code>--branches</code>[<code>=</code><em>&lt;pattern&gt;</em>]</dt>
<dd>
<p>Pretend as if all the refs in <code>refs/heads</code> are listed
on the command line as <em>&lt;commit&gt;</em>. If <em>&lt;pattern&gt;</em> is given, limit
branches to ones matching given shell glob. If <em>&lt;pattern&gt;</em> lacks <em>?</em>,
<em>*</em>, or <em>[</em>, <em>/*</em> at the end is implied.</p>
</dd>
<dt class="hdlist1"><code>--tags</code>[<code>=</code><em>&lt;pattern&gt;</em>]</dt>
<dd>
<p>Pretend as if all the refs in <code>refs/tags</code> are listed
on the command line as <em>&lt;commit&gt;</em>. If <em>&lt;pattern&gt;</em> is given, limit
tags to ones matching given shell glob. If pattern lacks <em>?</em>, <em>*</em>,
or <em>[</em>, <em>/*</em> at the end is implied.</p>
</dd>
<dt class="hdlist1"><code>--remotes</code>[<code>=</code><em>&lt;pattern&gt;</em>]</dt>
<dd>
<p>Pretend as if all the refs in <code>refs/remotes</code> are listed
on the command line as <em>&lt;commit&gt;</em>. If <em>&lt;pattern&gt;</em> is given, limit
remote-tracking branches to ones matching given shell glob.
If pattern lacks <em>?</em>, <em>*</em>, or <em>[</em>, <em>/*</em> at the end is implied.</p>
</dd>
<dt class="hdlist1"><code>--glob=</code><em>&lt;glob-pattern&gt;</em></dt>
<dd>
<p>Pretend as if all the refs matching shell glob <em>&lt;glob-pattern&gt;</em>
are listed on the command line as <em>&lt;commit&gt;</em>. Leading <em>refs/</em>,
is automatically prepended if missing. If pattern lacks <em>?</em>, <em>*</em>,
or <em>[</em>, <em>/*</em> at the end is implied.</p>
</dd>
<dt class="hdlist1"><code>--exclude=</code><em>&lt;glob-pattern&gt;</em></dt>
<dd>
<p>Do not include refs matching <em>&lt;glob-pattern&gt;</em> that the next <code>--all</code>,
<code>--branches</code>, <code>--tags</code>, <code>--remotes</code>, or <code>--glob</code> would otherwise
consider. Repetitions of this option accumulate exclusion patterns
up to the next <code>--all</code>, <code>--branches</code>, <code>--tags</code>, <code>--remotes</code>, or
<code>--glob</code> option (other options or arguments do not clear
accumulated patterns).</p>
<div class="paragraph">
<p>The patterns given should not begin with <code>refs/heads</code>, <code>refs/tags</code>, or
<code>refs/remotes</code> when applied to <code>--branches</code>, <code>--tags</code>, or <code>--remotes</code>,
respectively, and they must begin with <code>refs/</code> when applied to <code>--glob</code>
or <code>--all</code>. If a trailing <em>/*</em> is intended, it must be given
explicitly.</p>
</div>
</dd>
<dt class="hdlist1"><code>--exclude-hidden=</code>(<code>fetch</code>|<code>receive</code>|<code>uploadpack</code>)</dt>
<dd>
<p>Do not include refs that would be hidden by <code>git-fetch</code>,
<code>git-receive-pack</code> or <code>git-upload-pack</code> by consulting the appropriate
<code>fetch.hideRefs</code>, <code>receive.hideRefs</code> or <code>uploadpack.hideRefs</code>
configuration along with <code>transfer.hideRefs</code> (see
<a href="git-config.html">git-config(1)</a>). This option affects the next pseudo-ref option
<code>--all</code> or <code>--glob</code> and is cleared after processing them.</p>
</dd>
<dt class="hdlist1"><code>--reflog</code></dt>
<dd>
<p>Pretend as if all objects mentioned by reflogs are listed on the
command line as <em>&lt;commit&gt;</em>.</p>
</dd>
<dt class="hdlist1"><code>--alternate-refs</code></dt>
<dd>
<p>Pretend as if all objects mentioned as ref tips of alternate
repositories were listed on the command line. An alternate
repository is any repository whose object directory is specified
in <code>objects/info/alternates</code>.  The set of included objects may
be modified by <code>core.alternateRefsCommand</code>, etc. See
<a href="git-config.html">git-config(1)</a>.</p>
</dd>
<dt class="hdlist1"><code>--single-worktree</code></dt>
<dd>
<p>By default, all working trees will be examined by the
following options when there are more than one (see
<a href="git-worktree.html">git-worktree(1)</a>): <code>--all</code>, <code>--reflog</code> and
<code>--indexed-objects</code>.
This option forces them to examine the current working tree
only.</p>
</dd>
<dt class="hdlist1"><code>--ignore-missing</code></dt>
<dd>
<p>Upon seeing an invalid object name in the input, pretend as if
the bad input was not given.</p>
</dd>
<dt class="hdlist1"><code>--bisect</code></dt>
<dd>
<p>Pretend as if the bad bisection ref <code>refs/bisect/bad</code>
was listed and as if it was followed by <code>--not</code> and the good
bisection refs <code>refs/bisect/good-*</code> on the command
line.</p>
</dd>
<dt class="hdlist1"><code>--stdin</code></dt>
<dd>
<p>In addition to getting arguments from the command line, read
them from standard input as well. This accepts commits and
pseudo-options like <code>--all</code> and <code>--glob=</code>. When a <code>--</code> separator
is seen, the following input is treated as paths and used to
limit the result. Flags like <code>--not</code> which are read via standard input
are only respected for arguments passed in the same way and will not
influence any subsequent command line arguments.</p>
</dd>
<dt class="hdlist1"><code>--cherry-mark</code></dt>
<dd>
<p>Like <code>--cherry-pick</code> (see below) but mark equivalent commits
with <code>=</code> rather than omitting them, and inequivalent ones with <code>+</code>.</p>
</dd>
<dt class="hdlist1"><code>--cherry-pick</code></dt>
<dd>
<p>Omit any commit that introduces the same change as
another commit on the &#8220;other side&#8221; when the set of
commits are limited with symmetric difference.</p>
<div class="paragraph">
<p>For example, if you have two branches, <code>A</code> and <code>B</code>, a usual way
to list all commits on only one side of them is with
<code>--left-right</code> (see the example below in the description of
the <code>--left-right</code> option). However, it shows the commits that were
cherry-picked from the other branch (for example, &#8220;3rd on b&#8221; may be
cherry-picked from branch A). With this option, such pairs of commits are
excluded from the output.</p>
</div>
</dd>
<dt class="hdlist1"><code>--left-only</code></dt>
<dt class="hdlist1"><code>--right-only</code></dt>
<dd>
<p>List only commits on the respective side of a symmetric difference,
i.e. only those which would be marked &lt; resp. &gt; by
<code>--left-right</code>.</p>
<div class="paragraph">
<p>For example, <code>--cherry-pick</code> <code>--right-only</code> <code>A</code><code>...</code><code>B</code> omits those
commits from <code>B</code> which are in <code>A</code> or are patch-equivalent to a commit in
<code>A</code>. In other words, this lists the <code>+</code> commits from <code>git</code> <code>cherry</code> <code>A</code> <code>B</code>.
More precisely, <code>--cherry-pick</code> <code>--right-only</code> <code>--no-merges</code> gives the exact
list.</p>
</div>
</dd>
<dt class="hdlist1"><code>--cherry</code></dt>
<dd>
<p>A synonym for <code>--right-only</code> <code>--cherry-mark</code> <code>--no-merges</code>; useful to
limit the output to the commits on our side and mark those that
have been applied to the other side of a forked history with
<code>git</code> <code>log</code> <code>--cherry</code> <code>upstream</code><code>...</code><code>mybranch</code>, similar to
<code>git</code> <code>cherry</code> <code>upstream</code> <code>mybranch</code>.</p>
</dd>
<dt class="hdlist1"><code>-g</code></dt>
<dt class="hdlist1"><code>--walk-reflogs</code></dt>
<dd>
<p>Instead of walking the commit ancestry chain, walk
reflog entries from the most recent one to older ones.
When this option is used you cannot specify commits to
exclude (that is, <code>^</code><em>&lt;commit&gt;</em>, <em>&lt;commit1&gt;</em><code>..</code><em>&lt;commit2&gt;</em>,
and <em>&lt;commit1&gt;</em><code>...</code><em>&lt;commit2&gt;</em> notations cannot be used).</p>
<div class="paragraph">
<p>With <code>--pretty</code> format other than <code>oneline</code> and <code>reference</code> (for obvious reasons),
this causes the output to have two extra lines of information
taken from the reflog.  The reflog designator in the output may be shown
as <code>ref@</code>{<em>&lt;Nth&gt;</em>} (where <em>&lt;Nth&gt;</em> is the reverse-chronological index in the
reflog) or as <code>ref@</code>{<em>&lt;timestamp&gt;</em>} (with the <em>&lt;timestamp&gt;</em> for that entry),
depending on a few rules:</p>
</div>
<div class="openblock">
<div class="content">
<div class="olist arabic">
<ol class="arabic">
<li>
<p>If the starting point is specified as <code>ref@</code>{<em>&lt;Nth&gt;</em>}, show the index
format.</p>
</li>
<li>
<p>If the starting point was specified as <code>ref@</code>{now}, show the
timestamp format.</p>
</li>
<li>
<p>If neither was used, but <code>--date</code> was given on the command line, show
the timestamp in the format requested by <code>--date</code>.</p>
</li>
<li>
<p>Otherwise, show the index format.</p>
</li>
</ol>
</div>
</div>
</div>
<div class="paragraph">
<p>Under <code>--pretty=oneline</code>, the commit message is
prefixed with this information on the same line.
This option cannot be combined with <code>--reverse</code>.
See also <a href="git-reflog.html">git-reflog(1)</a>.</p>
</div>
<div class="paragraph">
<p>Under <code>--pretty=reference</code>, this information will not be shown at all.</p>
</div>
</dd>
<dt class="hdlist1"><code>--merge</code></dt>
<dd>
<p>Show commits touching conflicted paths in the range <code>HEAD</code><code>...</code><em>&lt;other&gt;</em>,
where <em>&lt;other&gt;</em> is the first existing pseudoref in <code>MERGE_HEAD</code>,
<code>CHERRY_PICK_HEAD</code>, <code>REVERT_HEAD</code> or <code>REBASE_HEAD</code>. Only works
when the index has unmerged entries. This option can be used to show
relevant commits when resolving conflicts from a 3-way merge.</p>
</dd>
<dt class="hdlist1"><code>--boundary</code></dt>
<dd>
<p>Output excluded boundary commits. Boundary commits are
prefixed with <code>-</code>.</p>
</dd>
</dl>
</div>
</div>
<div class="sect2">
<h3 id="_history_simplification">History Simplification</h3>
<div class="paragraph">
<p>Sometimes you are only interested in parts of the history, for example the
commits modifying a particular &lt;path&gt;. But there are two parts of
<em>History Simplification</em>, one part is selecting the commits and the other
is how to do it, as there are various strategies to simplify the history.</p>
</div>
<div class="paragraph">
<p>The following options select the commits to be shown:</p>
</div>
<div class="dlist">
<dl>
<dt class="hdlist1"><em>&lt;paths&gt;</em></dt>
<dd>
<p>Commits modifying the given &lt;paths&gt; are selected.</p>
</dd>
<dt class="hdlist1"><code>--simplify-by-decoration</code></dt>
<dd>
<p>Commits that are referred by some branch or tag are selected.</p>
</dd>
</dl>
</div>
<div class="paragraph">
<p>Note that extra commits can be shown to give a meaningful history.</p>
</div>
<div class="paragraph">
<p>The following options affect the way the simplification is performed:</p>
</div>
<div class="dlist">
<dl>
<dt class="hdlist1"><code>Default</code> <code>mode</code></dt>
<dd>
<p>Simplifies the history to the simplest history explaining the
final state of the tree. Simplest because it prunes some side
branches if the end result is the same (i.e. merging branches
with the same content)</p>
</dd>
<dt class="hdlist1"><code>--show-pulls</code></dt>
<dd>
<p>Include all commits from the default mode, but also any merge
commits that are not TREESAME to the first parent but are
TREESAME to a later parent. This mode is helpful for showing
the merge commits that "first introduced" a change to a branch.</p>
</dd>
<dt class="hdlist1"><code>--full-history</code></dt>
<dd>
<p>Same as the default mode, but does not prune some history.</p>
</dd>
<dt class="hdlist1"><code>--dense</code></dt>
<dd>
<p>Only the selected commits are shown, plus some to have a
meaningful history.</p>
</dd>
<dt class="hdlist1"><code>--sparse</code></dt>
<dd>
<p>All commits in the simplified history are shown.</p>
</dd>
<dt class="hdlist1"><code>--simplify-merges</code></dt>
<dd>
<p>Additional option to <code>--full-history</code> to remove some needless
merges from the resulting history, as there are no selected
commits contributing to this merge.</p>
</dd>
<dt class="hdlist1"><code>--ancestry-path</code>[<code>=</code><em>&lt;commit&gt;</em>]</dt>
<dd>
<p>When given a range of commits to display (e.g. <em>&lt;commit1&gt;</em><code>..</code><em>&lt;commit2&gt;</em>
or <em>&lt;commit2&gt;</em> <code>^</code><em>&lt;commit1&gt;</em>), and a commit <em>&lt;commit&gt;</em> in that range,
only display commits in that range
that are ancestors of <em>&lt;commit&gt;</em>, descendants of <em>&lt;commit&gt;</em>, or
<em>&lt;commit&gt;</em> itself.  If no commit is specified, use <em>&lt;commit1&gt;</em> (the
excluded part of the range) as <em>&lt;commit&gt;</em>.  Can be passed multiple
times; if so, a commit is included if it is any of the commits
given or if it is an ancestor or descendant of one of them.</p>
</dd>
</dl>
</div>
<div class="paragraph">
<p>A more detailed explanation follows.</p>
</div>
<div class="paragraph">
<p>Suppose you specified <code>foo</code> as the <em>&lt;paths&gt;</em>.  We shall call commits
that modify <code>foo</code> !TREESAME, and the rest TREESAME.  (In a diff
filtered for <code>foo</code>, they look different and equal, respectively.)</p>
</div>
<div class="paragraph">
<p>In the following, we will always refer to the same example history to
illustrate the differences between simplification settings.  We assume
that you are filtering for a file <code>foo</code> in this commit graph:</p>
</div>
<div class="listingblock">
<div class="content">
<pre>          .-A---M---N---O---P---Q
         /     /   /   /   /   /
        I     B   C   D   E   Y
         \   /   /   /   /   /
          `-------------'   X</pre>
</div>
</div>
<div class="paragraph">
<p>The horizontal line of history A---Q is taken to be the first parent of
each merge.  The commits are:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><code>I</code> is the initial commit, in which <code>foo</code> exists with contents
<code>asdf</code>, and a file <code>quux</code> exists with contents <code>quux</code>. Initial
commits are compared to an empty tree, so <code>I</code> is !TREESAME.</p>
</li>
<li>
<p>In <code>A</code>, <code>foo</code> contains just <code>foo</code>.</p>
</li>
<li>
<p><code>B</code> contains the same change as <code>A</code>.  Its merge <code>M</code> is trivial and
hence TREESAME to all parents.</p>
</li>
<li>
<p><code>C</code> does not change <code>foo</code>, but its merge <code>N</code> changes it to <code>foobar</code>,
so it is not TREESAME to any parent.</p>
</li>
<li>
<p><code>D</code> sets <code>foo</code> to <code>baz</code>. Its merge <code>O</code> combines the strings from
<code>N</code> and <code>D</code> to <code>foobarbaz</code>; i.e., it is not TREESAME to any parent.</p>
</li>
<li>
<p><code>E</code> changes <code>quux</code> to <code>xyzzy</code>, and its merge <code>P</code> combines the
strings to <code>quux</code> <code>xyzzy</code>. <code>P</code> is TREESAME to <code>O</code>, but not to <code>E</code>.</p>
</li>
<li>
<p><code>X</code> is an independent root commit that added a new file <code>side</code>, and <code>Y</code>
modified it. <code>Y</code> is TREESAME to <code>X</code>. Its merge <code>Q</code> added <code>side</code> to <code>P</code>, and
<code>Q</code> is TREESAME to <code>P</code>, but not to <code>Y</code>.</p>
</li>
</ul>
</div>
<div class="paragraph">
<p><code>rev-list</code> walks backwards through history, including or excluding
commits based on whether <code>--full-history</code> and/or parent rewriting
(via <code>--parents</code> or <code>--children</code>) are used. The following settings
are available.</p>
</div>
<div class="dlist">
<dl>
<dt class="hdlist1">Default mode</dt>
<dd>
<p>Commits are included if they are not TREESAME to any parent
(though this can be changed, see <code>--sparse</code> below).  If the
commit was a merge, and it was TREESAME to one parent, follow
only that parent.  (Even if there are several TREESAME
parents, follow only one of them.)  Otherwise, follow all
parents.</p>
<div class="paragraph">
<p>This results in:</p>
</div>
<div class="listingblock">
<div class="content">
<pre>          .-A---N---O
         /     /   /
        I---------D</pre>
</div>
</div>
<div class="paragraph">
<p>Note how the rule to only follow the TREESAME parent, if one is
available, removed <code>B</code> from consideration entirely.  <code>C</code> was
considered via <code>N</code>, but is TREESAME.  Root commits are compared to an
empty tree, so <code>I</code> is !TREESAME.</p>
</div>
<div class="paragraph">
<p>Parent/child relations are only visible with <code>--parents</code>, but that does
not affect the commits selected in default mode, so we have shown the
parent lines.</p>
</div>
</dd>
<dt class="hdlist1"><code>--full-history</code> without parent rewriting</dt>
<dd>
<p>This mode differs from the default in one point: always follow
all parents of a merge, even if it is TREESAME to one of them.
Even if more than one side of the merge has commits that are
included, this does not imply that the merge itself is!  In
the example, we get</p>
<div class="listingblock">
<div class="content">
<pre>        I  A  B  N  D  O  P  Q</pre>
</div>
</div>
<div class="paragraph">
<p><code>M</code> was excluded because it is TREESAME to both parents.  <code>E</code>,
<code>C</code> and <code>B</code> were all walked, but only <code>B</code> was !TREESAME, so the others
do not appear.</p>
</div>
<div class="paragraph">
<p>Note that without parent rewriting, it is not really possible to talk
about the parent/child relationships between the commits, so we show
them disconnected.</p>
</div>
</dd>
<dt class="hdlist1"><code>--full-history</code> with parent rewriting</dt>
<dd>
<p>Ordinary commits are only included if they are !TREESAME
(though this can be changed, see <code>--sparse</code> below).</p>
<div class="paragraph">
<p>Merges are always included.  However, their parent list is rewritten:
Along each parent, prune away commits that are not included
themselves.  This results in</p>
</div>
<div class="listingblock">
<div class="content">
<pre>          .-A---M---N---O---P---Q
         /     /   /   /   /
        I     B   /   D   /
         \   /   /   /   /
          `-------------'</pre>
</div>
</div>
<div class="paragraph">
<p>Compare to <code>--full-history</code> without rewriting above.  Note that <code>E</code>
was pruned away because it is TREESAME, but the parent list of P was
rewritten to contain <code>E</code>'s parent <code>I</code>.  The same happened for <code>C</code> and
<code>N</code>, and <code>X</code>, <code>Y</code> and <code>Q</code>.</p>
</div>
</dd>
</dl>
</div>
<div class="paragraph">
<p>In addition to the above settings, you can change whether TREESAME
affects inclusion:</p>
</div>
<div class="dlist">
<dl>
<dt class="hdlist1"><code>--dense</code></dt>
<dd>
<p>Commits that are walked are included if they are not TREESAME
to any parent.</p>
</dd>
<dt class="hdlist1"><code>--sparse</code></dt>
<dd>
<p>All commits that are walked are included.</p>
<div class="paragraph">
<p>Note that without <code>--full-history</code>, this still simplifies merges: if
one of the parents is TREESAME, we follow only that one, so the other
sides of the merge are never walked.</p>
</div>
</dd>
<dt class="hdlist1"><code>--simplify-merges</code></dt>
<dd>
<p>First, build a history graph in the same way that
<code>--full-history</code> with parent rewriting does (see above).</p>
<div class="paragraph">
<p>Then simplify each commit <code>C</code> to its replacement <code>C</code>' in the final
history according to the following rules:</p>
</div>
<div class="openblock">
<div class="content">
<div class="ulist">
<ul>
<li>
<p>Set <code>C</code>' to <code>C</code>.</p>
</li>
<li>
<p>Replace each parent <code>P</code> of <code>C</code>' with its simplification <code>P</code>'.  In
the process, drop parents that are ancestors of other parents or that are
root commits TREESAME to an empty tree, and remove duplicates, but take care
to never drop all parents that we are TREESAME to.</p>
</li>
<li>
<p>If after this parent rewriting, <code>C</code>' is a root or merge commit (has
zero or &gt;1 parents), a boundary commit, or !TREESAME, it remains.
Otherwise, it is replaced with its only parent.</p>
</li>
</ul>
</div>
</div>
</div>
<div class="paragraph">
<p>The effect of this is best shown by way of comparing to
<code>--full-history</code> with parent rewriting.  The example turns into:</p>
</div>
<div class="listingblock">
<div class="content">
<pre>          .-A---M---N---O
         /     /       /
        I     B       D
         \   /       /
          `---------'</pre>
</div>
</div>
<div class="paragraph">
<p>Note the major differences in <code>N</code>, <code>P</code>, and <code>Q</code> over <code>--full-history</code>:</p>
</div>
<div class="openblock">
<div class="content">
<div class="ulist">
<ul>
<li>
<p><code>N</code>'s parent list had <code>I</code> removed, because it is an ancestor of the
other parent <code>M</code>.  Still, <code>N</code> remained because it is !TREESAME.</p>
</li>
<li>
<p><code>P</code>'s parent list similarly had <code>I</code> removed.  <code>P</code> was then
removed completely, because it had one parent and is TREESAME.</p>
</li>
<li>
<p><code>Q</code>'s parent list had <code>Y</code> simplified to <code>X</code>. <code>X</code> was then removed, because it
was a TREESAME root. <code>Q</code> was then removed completely, because it had one
parent and is TREESAME.</p>
</li>
</ul>
</div>
</div>
</div>
</dd>
</dl>
</div>
<div class="paragraph">
<p>There is another simplification mode available:</p>
</div>
<div class="dlist">
<dl>
<dt class="hdlist1"><code>--ancestry-path</code>[<code>=</code><em>&lt;commit&gt;</em>]</dt>
<dd>
<p>Limit the displayed commits to those which are an ancestor of
<em>&lt;commit&gt;</em>, or which are a descendant of <em>&lt;commit&gt;</em>, or are <em>&lt;commit&gt;</em>
itself.</p>
<div class="paragraph">
<p>As an example use case, consider the following commit history:</p>
</div>
<div class="listingblock">
<div class="content">
<pre>            D---E-------F
           /     \       \
          B---C---G---H---I---J
         /                     \
        A-------K---------------L--M</pre>
</div>
</div>
<div class="paragraph">
<p>A regular <em>D..M</em> computes the set of commits that are ancestors of <code>M</code>,
but excludes the ones that are ancestors of <code>D</code>. This is useful to see
what happened to the history leading to <code>M</code> since <code>D</code>, in the sense
that "what does <code>M</code> have that did not exist in <code>D</code>". The result in this
example would be all the commits, except <code>A</code> and <code>B</code> (and <code>D</code> itself,
of course).</p>
</div>
<div class="paragraph">
<p>When we want to find out what commits in <code>M</code> are contaminated with the
bug introduced by <code>D</code> and need fixing, however, we might want to view
only the subset of <code>D</code><code>..</code><code>M</code> that are actually descendants of <code>D</code>, i.e.
excluding <code>C</code> and <code>K</code>. This is exactly what the <code>--ancestry-path</code>
option does. Applied to the <code>D</code><code>..</code><code>M</code> range, it results in:</p>
</div>
<div class="listingblock">
<div class="content">
<pre>                E-------F
                 \       \
                  G---H---I---J
                               \
                                L--M</pre>
</div>
</div>
<div class="paragraph">
<p>We can also use <code>--ancestry-path=D</code> instead of <code>--ancestry-path</code> which
means the same thing when applied to the <code>D</code><code>..</code><code>M</code> range but is just more
explicit.</p>
</div>
<div class="paragraph">
<p>If we instead are interested in a given topic within this range, and all
commits affected by that topic, we may only want to view the subset of
<code>D</code><code>..</code><code>M</code> which contain that topic in their ancestry path.  So, using
<code>--ancestry-path=H</code> <code>D</code><code>..</code><code>M</code> for example would result in:</p>
</div>
<div class="listingblock">
<div class="content">
<pre>                E
                 \
              C---G---H---I---J
                               \
                                L--M</pre>
</div>
</div>
<div class="paragraph">
<p>Whereas <code>--ancestry-path=K</code> <code>D</code><code>..</code><code>M</code> would result in</p>
</div>
<div class="listingblock">
<div class="content">
<pre>                K---------------L--M</pre>
</div>
</div>
</dd>
</dl>
</div>
<div class="paragraph">
<p>Before discussing another option, <code>--show-pulls</code>, we need to
create a new example history.</p>
</div>
<div class="paragraph">
<p>A common problem users face when looking at simplified history is that a
commit they know changed a file somehow does not appear in the file&#8217;s
simplified history. Let&#8217;s demonstrate a new example and show how options
such as <code>--full-history</code> and <code>--simplify-merges</code> works in that case:</p>
</div>
<div class="listingblock">
<div class="content">
<pre>          .-A---M-----C--N---O---P
         /     / \  \  \/   /   /
        I     B   \  R-'`-Z'   /
         \   /     \/         /
          \ /      /\        /
           `---X--'  `---Y--'</pre>
</div>
</div>
<div class="paragraph">
<p>For this example, suppose <code>I</code> created <code>file.txt</code> which was modified by
<code>A</code>, <code>B</code>, and <code>X</code> in different ways. The single-parent commits <code>C</code>, <code>Z</code>,
and <code>Y</code> do not change <code>file.txt</code>. The merge commit <code>M</code> was created by
resolving the merge conflict to include both changes from <code>A</code> and <code>B</code>
and hence is not TREESAME to either. The merge commit <code>R</code>, however, was
created by ignoring the contents of <code>file.txt</code> at <code>M</code> and taking only
the contents of <code>file.txt</code> at <code>X</code>. Hence, <code>R</code> is TREESAME to <code>X</code> but not
<code>M</code>. Finally, the natural merge resolution to create <code>N</code> is to take the
contents of <code>file.txt</code> at <code>R</code>, so <code>N</code> is TREESAME to <code>R</code> but not <code>C</code>.
The merge commits <code>O</code> and <code>P</code> are TREESAME to their first parents, but
not to their second parents, <code>Z</code> and <code>Y</code> respectively.</p>
</div>
<div class="paragraph">
<p>When using the default mode, <code>N</code> and <code>R</code> both have a TREESAME parent, so
those edges are walked and the others are ignored. The resulting history
graph is:</p>
</div>
<div class="listingblock">
<div class="content">
<pre>        I---X</pre>
</div>
</div>
<div class="paragraph">
<p>When using <code>--full-history</code>, Git walks every edge. This will discover
the commits <code>A</code> and <code>B</code> and the merge <code>M</code>, but also will reveal the
merge commits <code>O</code> and <code>P</code>. With parent rewriting, the resulting graph is:</p>
</div>
<div class="listingblock">
<div class="content">
<pre>          .-A---M--------N---O---P
         /     / \  \  \/   /   /
        I     B   \  R-'`--'   /
         \   /     \/         /
          \ /      /\        /
           `---X--'  `------'</pre>
</div>
</div>
<div class="paragraph">
<p>Here, the merge commits <code>O</code> and <code>P</code> contribute extra noise, as they did
not actually contribute a change to <code>file.txt</code>. They only merged a topic
that was based on an older version of <code>file.txt</code>. This is a common
issue in repositories using a workflow where many contributors work in
parallel and merge their topic branches along a single trunk: many
unrelated merges appear in the <code>--full-history</code> results.</p>
</div>
<div class="paragraph">
<p>When using the <code>--simplify-merges</code> option, the commits <code>O</code> and <code>P</code>
disappear from the results. This is because the rewritten second parents
of <code>O</code> and <code>P</code> are reachable from their first parents. Those edges are
removed and then the commits look like single-parent commits that are
TREESAME to their parent. This also happens to the commit <code>N</code>, resulting
in a history view as follows:</p>
</div>
<div class="listingblock">
<div class="content">
<pre>          .-A---M--.
         /     /    \
        I     B      R
         \   /      /
          \ /      /
           `---X--'</pre>
</div>
</div>
<div class="paragraph">
<p>In this view, we see all of the important single-parent changes from
<code>A</code>, <code>B</code>, and <code>X</code>. We also see the carefully-resolved merge <code>M</code> and the
not-so-carefully-resolved merge <code>R</code>. This is usually enough information
to determine why the commits <code>A</code> and <code>B</code> "disappeared" from history in
the default view. However, there are a few issues with this approach.</p>
</div>
<div class="paragraph">
<p>The first issue is performance. Unlike any previous option, the
<code>--simplify-merges</code> option requires walking the entire commit history
before returning a single result. This can make the option difficult to
use for very large repositories.</p>
</div>
<div class="paragraph">
<p>The second issue is one of auditing. When many contributors are working
on the same repository, it is important which merge commits introduced
a change into an important branch. The problematic merge <code>R</code> above is
not likely to be the merge commit that was used to merge into an
important branch. Instead, the merge <code>N</code> was used to merge <code>R</code> and <code>X</code>
into the important branch. This commit may have information about why
the change <code>X</code> came to override the changes from <code>A</code> and <code>B</code> in its
commit message.</p>
</div>
<div class="dlist">
<dl>
<dt class="hdlist1"><code>--show-pulls</code></dt>
<dd>
<p>In addition to the commits shown in the default history, show
each merge commit that is not TREESAME to its first parent but
is TREESAME to a later parent.</p>
<div class="paragraph">
<p>When a merge commit is included by <code>--show-pulls</code>, the merge is
treated as if it "pulled" the change from another branch. When using
<code>--show-pulls</code> on this example (and no other options) the resulting
graph is:</p>
</div>
<div class="listingblock">
<div class="content">
<pre>        I---X---R---N</pre>
</div>
</div>
<div class="paragraph">
<p>Here, the merge commits <code>R</code> and <code>N</code> are included because they pulled
the commits <code>X</code> and <code>R</code> into the base branch, respectively. These
merges are the reason the commits <code>A</code> and <code>B</code> do not appear in the
default history.</p>
</div>
<div class="paragraph">
<p>When <code>--show-pulls</code> is paired with <code>--simplify-merges</code>, the
graph includes all of the necessary information:</p>
</div>
<div class="listingblock">
<div class="content">
<pre>          .-A---M--.   N
         /     /    \ /
        I     B      R
         \   /      /
          \ /      /
           `---X--'</pre>
</div>
</div>
<div class="paragraph">
<p>Notice that since <code>M</code> is reachable from <code>R</code>, the edge from <code>N</code> to <code>M</code>
was simplified away. However, <code>N</code> still appears in the history as an
important commit because it "pulled" the change <code>R</code> into the main
branch.</p>
</div>
</dd>
</dl>
</div>
<div class="paragraph">
<p>The <code>--simplify-by-decoration</code> option allows you to view only the
big picture of the topology of the history, by omitting commits
that are not referenced by tags.  Commits are marked as !TREESAME
(in other words, kept after history simplification rules described
above) if (1) they are referenced by tags, or (2) they change the
contents of the paths given on the command line.  All other
commits are marked as TREESAME (subject to be simplified away).</p>
</div>
</div>
<div class="sect2">
<h3 id="_commit_ordering">Commit Ordering</h3>
<div class="paragraph">
<p>By default, the commits are shown in reverse chronological order.</p>
</div>
<div class="dlist">
<dl>
<dt class="hdlist1"><code>--date-order</code></dt>
<dd>
<p>Show no parents before all of its children are shown, but
otherwise show commits in the commit timestamp order.</p>
</dd>
<dt class="hdlist1"><code>--author-date-order</code></dt>
<dd>
<p>Show no parents before all of its children are shown, but
otherwise show commits in the author timestamp order.</p>
</dd>
<dt class="hdlist1"><code>--topo-order</code></dt>
<dd>
<p>Show no parents before all of its children are shown, and
avoid showing commits on multiple lines of history
intermixed.</p>
<div class="paragraph">
<p>For example, in a commit history like this:</p>
</div>
<div class="listingblock">
<div class="content">
<pre>    ---1----2----4----7
        \              \
         3----5----6----8---</pre>
</div>
</div>
<div class="paragraph">
<p>where the numbers denote the order of commit timestamps, <code>git</code>
<code>rev-list</code> and friends with <code>--date-order</code> show the commits in the
timestamp order: 8 7 6 5 4 3 2 1.</p>
</div>
<div class="paragraph">
<p>With <code>--topo-order</code>, they would show 8 6 5 3 7 4 2 1 (or 8 7 4 2 6 5
3 1); some older commits are shown before newer ones in order to
avoid showing the commits from two parallel development track mixed
together.</p>
</div>
</dd>
<dt class="hdlist1"><code>--reverse</code></dt>
<dd>
<p>Output the commits chosen to be shown (see <em>Commit Limiting</em>
section above) in reverse order. Cannot be combined with
<code>--walk-reflogs</code>.</p>
</dd>
</dl>
</div>
</div>
<div class="sect2">
<h3 id="_object_traversal">Object Traversal</h3>
<div class="paragraph">
<p>These options are mostly targeted for packing of Git repositories.</p>
</div>
<div class="dlist">
<dl>
<dt class="hdlist1"><code>--no-walk</code>[<code>=</code>(<code>sorted</code>|<code>unsorted</code>)]</dt>
<dd>
<p>Only show the given commits, but do not traverse their ancestors.
This has no effect if a range is specified. If the argument
<code>unsorted</code> is given, the commits are shown in the order they were
given on the command line. Otherwise (if <code>sorted</code> or no argument
was given), the commits are shown in reverse chronological order
by commit time.
Cannot be combined with <code>--graph</code>.</p>
</dd>
<dt class="hdlist1"><code>--do-walk</code></dt>
<dd>
<p>Overrides a previous <code>--no-walk</code>.</p>
</dd>
</dl>
</div>
</div>
<div class="sect2">
<h3 id="_commit_formatting">Commit Formatting</h3>
<div class="dlist">
<dl>
<dt class="hdlist1"><code>--pretty</code>[<code>=</code><em>&lt;format&gt;</em>]</dt>
<dt class="hdlist1"><code>--format=</code><em>&lt;format&gt;</em></dt>
<dd>
<p>Pretty-print the contents of the commit logs in a given format,
where <em>&lt;format&gt;</em> can be one of <code>oneline</code>, <code>short</code>, <code>medium</code>,
<code>full</code>, <code>fuller</code>, <code>reference</code>, <code>email</code>, <code>raw</code>, <code>format:</code><em>&lt;string&gt;</em>
and <code>tformat:</code><em>&lt;string&gt;</em>.  When <em>&lt;format&gt;</em> is none of the above,
and has <code>%</code><em>&lt;placeholder&gt;</em> in it, it acts as if
<code>--pretty=tformat:</code><em>&lt;format&gt;</em> were given.</p>
<div class="paragraph">
<p>See the "PRETTY FORMATS" section for some additional details for each
format.  When <code>=</code><em>&lt;format&gt;</em> part is omitted, it defaults to <code>medium</code>.</p>
</div>
<div class="admonitionblock note">
<table>
<tr>
<td class="icon">
<div class="title">Note</div>
</td>
<td class="content">
you can specify the default pretty format in the repository
configuration (see <a href="git-config.html">git-config(1)</a>).
</td>
</tr>
</table>
</div>
</dd>
<dt class="hdlist1"><code>--abbrev-commit</code></dt>
<dd>
<p>Instead of showing the full 40-byte hexadecimal commit object
name, show a prefix that names the object uniquely.
<code>--abbrev=</code><em>&lt;n&gt;</em> (which also modifies diff output, if it is displayed)
option can be used to specify the minimum length of the prefix.</p>
<div class="paragraph">
<p>This should make <code>--pretty=oneline</code> a whole lot more readable for
people using 80-column terminals.</p>
</div>
</dd>
<dt class="hdlist1"><code>--no-abbrev-commit</code></dt>
<dd>
<p>Show the full 40-byte hexadecimal commit object name. This negates
<code>--abbrev-commit</code>, either explicit or implied by other options such
as <code>--oneline</code>. It also overrides the <code>log.abbrevCommit</code> variable.</p>
</dd>
<dt class="hdlist1"><code>--oneline</code></dt>
<dd>
<p>This is a shorthand for <code>--pretty=oneline</code> <code>--abbrev-commit</code>
used together.</p>
</dd>
<dt class="hdlist1"><code>--encoding=</code><em>&lt;encoding&gt;</em></dt>
<dd>
<p>Commit objects record the character encoding used for the log message
in their encoding header; this option can be used to tell the
command to re-code the commit log message in the encoding
preferred by the user.  For non plumbing commands this
defaults to UTF-8. Note that if an object claims to be encoded
in <code>X</code> and we are outputting in <code>X</code>, we will output the object
verbatim; this means that invalid sequences in the original
commit may be copied to the output. Likewise, if iconv(3) fails
to convert the commit, we will quietly output the original
object verbatim.</p>
</dd>
<dt class="hdlist1"><code>--expand-tabs=</code><em>&lt;n&gt;</em></dt>
<dt class="hdlist1"><code>--expand-tabs</code></dt>
<dt class="hdlist1"><code>--no-expand-tabs</code></dt>
<dd>
<p>Perform a tab expansion (replace each tab with enough spaces
to fill to the next display column that is a multiple of <em>&lt;n&gt;</em>)
in the log message before showing it in the output.
<code>--expand-tabs</code> is a short-hand for <code>--expand-tabs=8</code>, and
<code>--no-expand-tabs</code> is a short-hand for <code>--expand-tabs=0</code>,
which disables tab expansion.</p>
<div class="paragraph">
<p>By default, tabs are expanded in pretty formats that indent the log
message by 4 spaces (i.e.  <code>medium</code>, which is the default, <code>full</code>,
and <code>fuller</code>).</p>
</div>
</dd>
<dt class="hdlist1"><code>--notes</code>[<code>=</code><em>&lt;ref&gt;</em>]</dt>
<dd>
<p>	Show the notes (see <a href="git-notes.html">git-notes(1)</a>) that annotate the
	commit, when showing the commit log message.
This is the default for <code>git</code> <code>log</code>, <code>git</code> <code>show</code> and <code>git</code> <code>whatchanged</code>
commands when there is no <code>--pretty</code>, <code>--format</code>, or <code>--oneline</code> option given
on the command line.</p>
<div class="paragraph">
<p>By default, the notes shown are from the notes refs listed in the
<code>core.notesRef</code> and <code>notes.displayRef</code> variables (or corresponding
environment overrides). See <a href="git-config.html">git-config(1)</a> for more details.</p>
</div>
<div class="paragraph">
<p>With an optional <em>&lt;ref&gt;</em> argument, use the ref to find the notes
to display.  The ref can specify the full refname when it begins
with <code>refs/notes/</code>; when it begins with <code>notes/</code>, <code>refs/</code> and otherwise
<code>refs/notes/</code> is prefixed to form the full name of the ref.</p>
</div>
<div class="paragraph">
<p>Multiple <code>--notes</code> options can be combined to control which notes are
being displayed. Examples: "<code>--notes=foo</code>" will show only notes from
<code>refs/notes/foo</code>; "<code>--notes=foo</code> <code>--notes</code>" will show both notes from
"refs/notes/foo" and from the default notes ref(s).</p>
</div>
</dd>
<dt class="hdlist1"><code>--no-notes</code></dt>
<dd>
<p>Do not show notes. This negates the above <code>--notes</code> option, by
resetting the list of notes refs from which notes are shown.
Options are parsed in the order given on the command line, so e.g.
"<code>--notes</code> <code>--notes=foo</code> <code>--no-notes</code> <code>--notes=bar</code>" will only show notes
from <code>refs/notes/bar</code>.</p>
</dd>
<dt class="hdlist1"><code>--show-notes-by-default</code></dt>
<dd>
<p>Show the default notes unless options for displaying specific
notes are given.</p>
</dd>
<dt class="hdlist1"><code>--show-notes</code>[<code>=</code><em>&lt;ref&gt;</em>]</dt>
<dt class="hdlist1"><code>--standard-notes</code></dt>
<dt class="hdlist1"><code>--no-standard-notes</code></dt>
<dd>
<p>These options are deprecated. Use the above <code>--notes</code>/<code>--no-notes</code>
options instead.</p>
</dd>
<dt class="hdlist1"><code>--show-signature</code></dt>
<dd>
<p>Check the validity of a signed commit object by passing the signature
to <code>gpg</code> <code>--verify</code> and show the output.</p>
</dd>
<dt class="hdlist1"><code>--relative-date</code></dt>
<dd>
<p>Synonym for <code>--date=relative</code>.</p>
</dd>
<dt class="hdlist1"><code>--date=</code><em>&lt;format&gt;</em></dt>
<dd>
<p>Only takes effect for dates shown in human-readable format, such
as when using <code>--pretty</code>. <code>log.date</code> config variable sets a default
value for the log command&#8217;s <code>--date</code> option. By default, dates
are shown in the original time zone (either committer&#8217;s or
author&#8217;s). If <code>-local</code> is appended to the format (e.g.,
<code>iso-local</code>), the user&#8217;s local time zone is used instead.</p>
<div class="openblock">
<div class="content">
<div class="paragraph">
<p><code>--date=relative</code> shows dates relative to the current time,
e.g. &#8220;2 hours ago&#8221;. The <code>-local</code> option has no effect for
<code>--date=relative</code>.</p>
</div>
<div class="paragraph">
<p><code>--date=local</code> is an alias for <code>--date=default-local</code>.</p>
</div>
<div class="paragraph">
<p><code>--date=iso</code> (or <code>--date=iso8601</code>) shows timestamps in a ISO 8601-like format.
The differences to the strict ISO 8601 format are:</p>
</div>
<div class="ulist">
<ul>
<li>
<p>a space instead of the <code>T</code> date/time delimiter</p>
</li>
<li>
<p>a space between time and time zone</p>
</li>
<li>
<p>no colon between hours and minutes of the time zone</p>
</li>
</ul>
</div>
<div class="paragraph">
<p><code>--date=iso-strict</code> (or <code>--date=iso8601-strict</code>) shows timestamps in strict
ISO 8601 format.</p>
</div>
<div class="paragraph">
<p><code>--date=rfc</code> (or <code>--date=rfc2822</code>) shows timestamps in RFC 2822
format, often found in email messages.</p>
</div>
<div class="paragraph">
<p><code>--date=short</code> shows only the date, but not the time, in <code>YYYY-MM-DD</code> format.</p>
</div>
<div class="paragraph">
<p><code>--date=raw</code> shows the date as seconds since the epoch (1970-01-01
00:00:00 UTC), followed by a space, and then the timezone as an offset
from UTC (a <code>+</code> or <code>-</code> with four digits; the first two are hours, and
the second two are minutes). I.e., as if the timestamp were formatted
with <code>strftime</code>("%s <code>%z</code>")).
Note that the <code>-local</code> option does not affect the seconds-since-epoch
value (which is always measured in UTC), but does switch the accompanying
timezone value.</p>
</div>
<div class="paragraph">
<p><code>--date=human</code> shows the timezone if the timezone does not match the
current time-zone, and doesn&#8217;t print the whole date if that matches
(ie skip printing year for dates that are "this year", but also skip
the whole date itself if it&#8217;s in the last few days and we can just say
what weekday it was).  For older dates the hour and minute is also
omitted.</p>
</div>
<div class="paragraph">
<p><code>--date=unix</code> shows the date as a Unix epoch timestamp (seconds since
1970).  As with <code>--raw</code>, this is always in UTC and therefore <code>-local</code>
has no effect.</p>
</div>
<div class="paragraph">
<p><code>--date=format:</code><em>&lt;format&gt;</em> feeds the <em>&lt;format&gt;</em> to your system <code>strftime</code>,
except for <code>%s</code>, <code>%z</code>, and <code>%Z</code>, which are handled internally.
Use <code>--date=format:%c</code> to show the date in your system locale&#8217;s
preferred format.  See the <code>strftime</code>(3) manual for a complete list of
format placeholders. When using <code>-local</code>, the correct syntax is
<code>--date=format-local:</code><em>&lt;format&gt;</em>.</p>
</div>
<div class="paragraph">
<p><code>--date=default</code> is the default format, and is based on ctime(3)
output.  It shows a single line with three-letter day of the week,
three-letter month, day-of-month, hour-minute-seconds in "HH:MM:SS"
format, followed by 4-digit year, plus timezone information, unless
the local time zone is used, e.g. <code>Thu</code> <code>Jan</code> <code>1</code> <code>00:00:00</code> <code>1970</code> <code>+0000</code>.</p>
</div>
</div>
</div>
</dd>
<dt class="hdlist1"><code>--parents</code></dt>
<dd>
<p>Print also the parents of the commit (in the form "commit parent&#8230;&#8203;").
Also enables parent rewriting, see <em>History Simplification</em> above.</p>
</dd>
<dt class="hdlist1"><code>--children</code></dt>
<dd>
<p>Print also the children of the commit (in the form "commit child&#8230;&#8203;").
Also enables parent rewriting, see <em>History Simplification</em> above.</p>
</dd>
<dt class="hdlist1"><code>--left-right</code></dt>
<dd>
<p>Mark which side of a symmetric difference a commit is reachable from.
Commits from the left side are prefixed with &lt; and those from
the right with &gt;.  If combined with <code>--boundary</code>, those
commits are prefixed with <code>-</code>.</p>
<div class="paragraph">
<p>For example, if you have this topology:</p>
</div>
<div class="listingblock">
<div class="content">
<pre>             y---b---b  branch B
            / \ /
           /   .
          /   / \
         o---x---a---a  branch A</pre>
</div>
</div>
<div class="paragraph">
<p>you would get an output like this:</p>
</div>
<div class="listingblock">
<div class="content">
<pre>        $ git rev-list --left-right --boundary --pretty=oneline A...B

        &gt;bbbbbbb... 3rd on b
        &gt;bbbbbbb... 2nd on b
        &lt;aaaaaaa... 3rd on a
        &lt;aaaaaaa... 2nd on a
        -yyyyyyy... 1st on b
        -xxxxxxx... 1st on a</pre>
</div>
</div>
</dd>
<dt class="hdlist1"><code>--graph</code></dt>
<dd>
<p>Draw a text-based graphical representation of the commit history
on the left hand side of the output.  This may cause extra lines
to be printed in between commits, in order for the graph history
to be drawn properly.
Cannot be combined with <code>--no-walk</code>.</p>
<div class="paragraph">
<p>This enables parent rewriting, see <em>History Simplification</em> above.</p>
</div>
<div class="paragraph">
<p>This implies the <code>--topo-order</code> option by default, but the
<code>--date-order</code> option may also be specified.</p>
</div>
</dd>
<dt class="hdlist1"><code>--show-linear-break</code>[<code>=</code><em>&lt;barrier&gt;</em>]</dt>
<dd>
<p>When <code>--graph</code> is not used, all history branches are flattened
which can make it hard to see that the two consecutive commits
do not belong to a linear branch. This option puts a barrier
in between them in that case. If <em>&lt;barrier&gt;</em> is specified, it
is the string that will be shown instead of the default one.</p>
</dd>
<dt class="hdlist1"><code>--graph-lane-limit=</code><em>&lt;n&gt;</em></dt>
<dd>
<p>When <code>--graph</code> is used, limit the number of graph lanes to be shown.
Lanes over the limit are replaced with a truncation mark <em>~</em>.
By default it is set to 0 (no limit), zero and negative values
are ignored and treated as no limit.</p>
</dd>
<dt class="hdlist1"><code>--no-graph-indent</code></dt>
<dt class="hdlist1"><code>--graph-indent</code></dt>
<dd>
<p>When used with <code>--graph</code>, indent visual roots (commits with no parents
or whose parents are not shown) to differentiate them from commits that
are vertically adjacent but unrelated. Enabled by default. Use
<code>--no-graph-indent</code> to disable or set <code>log.graphIndent</code> to set a
default preference.</p>
</dd>
</dl>
</div>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_pretty_formats">PRETTY FORMATS</h2>
<div class="sectionbody">
<div class="paragraph">
<p>If the commit is a merge, and if the pretty-format
is not <code>oneline</code>, <code>email</code> or <code>raw</code>, an additional line is
inserted before the <code>Author:</code> line.  This line begins with
"Merge: " and the hashes of ancestral commits are printed,
separated by spaces.  Note that the listed commits may not
necessarily be the list of the <em>direct</em> parent commits if you
have limited your view of history: for example, if you are
only interested in changes related to a certain directory or
file.</p>
</div>
<div class="paragraph">
<p>There are several built-in formats, and you can define
additional formats by setting a pretty.&lt;name&gt;
config option to either another format name, or a
<code>format:</code> string, as described below (see
<a href="git-config.html">git-config(1)</a>). Here are the details of the
built-in formats:</p>
</div>
<div class="dlist">
<dl>
<dt class="hdlist1"><code>oneline</code></dt>
<dd>
<div class="verseblock">
<pre class="content"><em>&lt;hash&gt;</em> <em>&lt;title-line&gt;</em></pre>
</div>
<div class="paragraph">
<p>This is designed to be as compact as possible.</p>
</div>
</dd>
<dt class="hdlist1"><code>short</code></dt>
<dd>
<div class="verseblock">
<pre class="content"><code>commit</code> <em>&lt;hash&gt;</em>
<code>Author:</code> <em>&lt;author&gt;</em>

    <em>&lt;title-line&gt;</em></pre>
</div>
</dd>
<dt class="hdlist1"><code>medium</code></dt>
<dd>
<div class="verseblock">
<pre class="content"><code>commit</code> <em>&lt;hash&gt;</em>
<code>Author:</code> <em>&lt;author&gt;</em>
<code>Date:</code>   <em>&lt;author-date&gt;</em>

    <em>&lt;title-line&gt;</em>

    <em>&lt;full-commit-message&gt;</em></pre>
</div>
</dd>
<dt class="hdlist1"><code>full</code></dt>
<dd>
<div class="verseblock">
<pre class="content"><code>commit</code> <em>&lt;hash&gt;</em>
<code>Author:</code> <em>&lt;author&gt;</em>
<code>Commit:</code> <em>&lt;committer&gt;</em>

    <em>&lt;title-line&gt;</em>

    <em>&lt;full-commit-message&gt;</em></pre>
</div>
</dd>
<dt class="hdlist1"><code>fuller</code></dt>
<dd>
<div class="verseblock">
<pre class="content"><code>commit</code> <em>&lt;hash&gt;</em>
<code>Author:</code>     <em>&lt;author&gt;</em>
<code>AuthorDate:</code> <em>&lt;author-date&gt;</em>
<code>Commit:</code>     <em>&lt;committer&gt;</em>
<code>CommitDate:</code> <em>&lt;committer-date&gt;</em>

     <em>&lt;title-line&gt;</em>

     <em>&lt;full-commit-message&gt;</em></pre>
</div>
</dd>
<dt class="hdlist1"><code>reference</code></dt>
<dd>
<div class="verseblock">
<pre class="content"><em>&lt;abbrev-hash&gt;</em> (<em>&lt;title-line&gt;</em><code>,</code> <em>&lt;short-author-date&gt;</em>)</pre>
</div>
<div class="paragraph">
<p>This format is used to refer to another commit in a commit message and
is the same as <code>--pretty=</code>'format:%C(<code>auto</code>)<code>%h</code> (<code>%s,</code> <code>%ad</code>)'.  By default,
the date is formatted with <code>--date=short</code> unless another <code>--date</code> option
is explicitly specified.  As with any <code>format:</code> with format
placeholders, its output is not affected by other options like
<code>--decorate</code> and <code>--walk-reflogs</code>.</p>
</div>
</dd>
<dt class="hdlist1"><code>email</code></dt>
<dd>
<div class="verseblock">
<pre class="content"><code>From</code> <em>&lt;hash&gt;</em> <em>&lt;date&gt;</em>
<code>From:</code> <em>&lt;author&gt;</em>
<code>Date:</code> <em>&lt;author-date&gt;</em>
<code>Subject:</code> [<code>PATCH</code>] <em>&lt;title-line&gt;</em>

<em>&lt;full-commit-message&gt;</em></pre>
</div>
</dd>
<dt class="hdlist1"><code>mboxrd</code></dt>
<dd>
<p>Like <code>email</code>, but lines in the commit message starting with "From "
(preceded by zero or more "&gt;") are quoted with "&gt;" so they aren&#8217;t
confused as starting a new commit.</p>
</dd>
<dt class="hdlist1"><code>raw</code></dt>
<dd>
<p>The <code>raw</code> format shows the entire commit exactly as
stored in the commit object.  Notably, the hashes are
displayed in full, regardless of whether <code>--abbrev</code> or
<code>--no-abbrev</code> are used, and <em>parents</em> information show the
true parent commits, without taking grafts or history
simplification into account. Note that this format affects the way
commits are displayed, but not the way the diff is shown e.g. with
<code>git</code> <code>log</code> <code>--raw</code>. To get full object names in a raw diff format,
use <code>--no-abbrev</code>.</p>
</dd>
<dt class="hdlist1"><code>format:</code><em>&lt;format-string&gt;</em></dt>
<dd>
<p>The <code>format:</code><em>&lt;format-string&gt;</em> format allows you to specify which information
you want to show. It works a little bit like printf format,
with the notable exception that you get a newline with <code>%n</code>
instead of <code>\n</code>.</p>
<div class="paragraph">
<p>E.g, <em>format:"The author of %h was %an, %ar%nThe title was &gt;&gt;%s&lt;&lt;%n"</em>
would show something like this:</p>
</div>
<div class="listingblock">
<div class="content">
<pre>The author of fe6e0ee was Junio C Hamano, 23 hours ago
The title was &gt;&gt;t4119: test autocomputing -p&lt;n&gt; for traditional diff input.&lt;&lt;</pre>
</div>
</div>
<div class="paragraph">
<p>The placeholders are:</p>
</div>
<div class="ulist">
<ul>
<li>
<p>Placeholders that expand to a single literal character:</p>
<div class="openblock">
<div class="content">
<div class="dlist">
<dl>
<dt class="hdlist1"><code>%n</code></dt>
<dd>
<p>newline</p>
</dd>
<dt class="hdlist1"><code>%%</code></dt>
<dd>
<p>a raw <code>%</code></p>
</dd>
<dt class="hdlist1"><code>%x00</code></dt>
<dd>
<p><code>%x</code> followed by two hexadecimal digits is replaced with a
byte with the hexadecimal digits' value (we will call this
"literal formatting code" in the rest of this document).</p>
</dd>
</dl>
</div>
</div>
</div>
</li>
<li>
<p>Placeholders that affect formatting of later placeholders:</p>
<div class="openblock">
<div class="content">
<div class="dlist">
<dl>
<dt class="hdlist1"><code>%Cred</code></dt>
<dd>
<p>switch color to red</p>
</dd>
<dt class="hdlist1"><code>%Cgreen</code></dt>
<dd>
<p>switch color to green</p>
</dd>
<dt class="hdlist1"><code>%Cblue</code></dt>
<dd>
<p>switch color to blue</p>
</dd>
<dt class="hdlist1"><code>%Creset</code></dt>
<dd>
<p>reset color</p>
</dd>
<dt class="hdlist1"><code>%C</code>(<em>&lt;spec&gt;</em>)</dt>
<dd>
<p>color specification, as described under Values in the
"CONFIGURATION FILE" section of <a href="git-config.html">git-config(1)</a>.  By
default, colors are shown only when enabled for log output
(by <code>color.diff</code>, <code>color.ui</code>, or <code>--color</code>, and respecting
the <code>auto</code> settings of the former if we are going to a
terminal). <code>%C</code>(<code>auto,</code><em>&lt;spec&gt;</em>) is accepted as a historical
synonym for the default (e.g., <code>%C</code>(<code>auto,red</code>)). Specifying
<code>%C</code>(<code>always,</code><em>&lt;spec&gt;</em>) will show the colors even when color is
not otherwise enabled (though consider just using
<code>--color=always</code> to enable color for the  whole output,
including this format and anything else git might color).
<code>auto</code> alone (i.e. <code>%C</code>(<code>auto</code>)) will turn on auto coloring
on the next placeholders until the color is switched
again.</p>
</dd>
<dt class="hdlist1"><code>%m</code></dt>
<dd>
<p>left (&lt;), right (&gt;) or boundary (<code>-</code>) mark</p>
</dd>
<dt class="hdlist1"><code>%w</code>([<em>&lt;w&gt;</em>[<code>,</code><em>&lt;i1&gt;</em>[<code>,</code><em>&lt;i2&gt;</em>]]])</dt>
<dd>
<p>switch line wrapping, like the <code>-w</code> option of
<a href="git-shortlog.html">git-shortlog(1)</a>.</p>
</dd>
<dt class="hdlist1"><code>%</code>&lt;(<em>&lt;n&gt;</em>[<code>,</code>(<code>trunc</code>|<code>ltrunc</code>|<code>mtrunc</code>)])</dt>
<dd>
<p>make the next placeholder take at
least N column widths, padding spaces on
the right if necessary.  Optionally
truncate (with ellipsis <code>..</code>) at the left (ltrunc) <code>..</code><code>ft</code>,
the middle (mtrunc) <code>mi</code><code>..</code><code>le</code>, or the end
(trunc) <code>rig..</code>, if the output is longer than
<em>&lt;n&gt;</em> columns.
Note 1: that truncating
only works correctly with <em>&lt;n&gt;</em> &gt;= 2.
Note 2: spaces around the <em>&lt;n&gt;</em> and <em>&lt;m&gt;</em> (see below)
values are optional.
Note 3: Emojis and other wide characters
will take two display columns, which may
over-run column boundaries.
Note 4: decomposed character combining marks
may be misplaced at padding boundaries.</p>
</dd>
<dt class="hdlist1"><code>%</code>&lt;|(<em>&lt;m&gt;</em> )</dt>
<dd>
<p>make the next placeholder take at least until <em>&lt;m&gt;</em> th
display column, padding spaces on the right if necessary.
Use negative <em>&lt;m&gt;</em> values for column positions measured
from the right hand edge of the terminal window.</p>
</dd>
<dt class="hdlist1"><code>%</code>&gt;(<em>&lt;n&gt;</em>)</dt>
<dt class="hdlist1"><code>%</code>&gt;|(<em>&lt;m&gt;</em>)</dt>
<dd>
<p>similar to <code>%</code>&lt;(<em>&lt;n&gt;</em>), <code>%</code>&lt;|(<em>&lt;m&gt;</em>) respectively,
but padding spaces on the left</p>
</dd>
<dt class="hdlist1"><code>%</code>&gt;&gt;(<em>&lt;n&gt;</em>)</dt>
<dt class="hdlist1"><code>%</code>&gt;&gt;|(<em>&lt;m&gt;</em>)</dt>
<dd>
<p>similar to <code>%</code>&gt;(<em>&lt;n&gt;</em>), <code>%</code>&gt;|(<em>&lt;m&gt;</em>)
respectively, except that if the next
placeholder takes more spaces than given and
there are spaces on its left, use those
spaces</p>
</dd>
<dt class="hdlist1"><code>%</code>&gt;&lt;(<em>&lt;n&gt;</em>)</dt>
<dt class="hdlist1"><code>%</code>&gt;&lt;|(<em>&lt;m&gt;</em>)</dt>
<dd>
<p>similar to <code>%</code>&lt;(<em>&lt;n&gt;</em>), <code>%</code>&lt;|(<em>&lt;m&gt;</em>)
respectively, but padding both sides
(i.e. the text is centered)</p>
</dd>
</dl>
</div>
</div>
</div>
</li>
<li>
<p>Placeholders that expand to information extracted from the commit:</p>
<div class="openblock">
<div class="content">
<div class="dlist">
<dl>
<dt class="hdlist1"><code>%H</code></dt>
<dd>
<p>commit hash</p>
</dd>
<dt class="hdlist1"><code>%h</code></dt>
<dd>
<p>abbreviated commit hash</p>
</dd>
<dt class="hdlist1"><code>%T</code></dt>
<dd>
<p>tree hash</p>
</dd>
<dt class="hdlist1"><code>%t</code></dt>
<dd>
<p>abbreviated tree hash</p>
</dd>
<dt class="hdlist1"><code>%P</code></dt>
<dd>
<p>parent hashes</p>
</dd>
<dt class="hdlist1"><code>%p</code></dt>
<dd>
<p>abbreviated parent hashes</p>
</dd>
<dt class="hdlist1"><code>%an</code></dt>
<dd>
<p>author name</p>
</dd>
<dt class="hdlist1"><code>%aN</code></dt>
<dd>
<p>author name (respecting .mailmap, see <a href="git-shortlog.html">git-shortlog(1)</a>
or <a href="git-blame.html">git-blame(1)</a>)</p>
</dd>
<dt class="hdlist1"><code>%ae</code></dt>
<dd>
<p>author email</p>
</dd>
<dt class="hdlist1"><code>%aE</code></dt>
<dd>
<p>author email (respecting .mailmap, see <a href="git-shortlog.html">git-shortlog(1)</a>
or <a href="git-blame.html">git-blame(1)</a>)</p>
</dd>
<dt class="hdlist1"><code>%al</code></dt>
<dd>
<p>author email local-part (the part before the <code>@</code> sign)</p>
</dd>
<dt class="hdlist1"><code>%aL</code></dt>
<dd>
<p>author local-part (see <code>%al</code>) respecting .mailmap, see
<a href="git-shortlog.html">git-shortlog(1)</a> or <a href="git-blame.html">git-blame(1)</a>)</p>
</dd>
<dt class="hdlist1"><code>%ad</code></dt>
<dd>
<p>author date (format respects --date= option)</p>
</dd>
<dt class="hdlist1"><code>%aD</code></dt>
<dd>
<p>author date, RFC2822 style</p>
</dd>
<dt class="hdlist1"><code>%ar</code></dt>
<dd>
<p>author date, relative</p>
</dd>
<dt class="hdlist1"><code>%at</code></dt>
<dd>
<p>author date, UNIX timestamp</p>
</dd>
<dt class="hdlist1"><code>%ai</code></dt>
<dd>
<p>author date, ISO 8601-like format</p>
</dd>
<dt class="hdlist1"><code>%aI</code></dt>
<dd>
<p>author date, strict ISO 8601 format</p>
</dd>
<dt class="hdlist1"><code>%as</code></dt>
<dd>
<p>author date, short format (<code>YYYY-MM-DD</code>)</p>
</dd>
<dt class="hdlist1"><code>%ah</code></dt>
<dd>
<p>author date, human style (like the <code>--date=human</code> option of
<a href="git-rev-list.html">git-rev-list(1)</a>)</p>
</dd>
<dt class="hdlist1"><code>%cn</code></dt>
<dd>
<p>committer name</p>
</dd>
<dt class="hdlist1"><code>%cN</code></dt>
<dd>
<p>committer name (respecting .mailmap, see
<a href="git-shortlog.html">git-shortlog(1)</a> or <a href="git-blame.html">git-blame(1)</a>)</p>
</dd>
<dt class="hdlist1"><code>%ce</code></dt>
<dd>
<p>committer email</p>
</dd>
<dt class="hdlist1"><code>%cE</code></dt>
<dd>
<p>committer email (respecting .mailmap, see
<a href="git-shortlog.html">git-shortlog(1)</a> or <a href="git-blame.html">git-blame(1)</a>)</p>
</dd>
<dt class="hdlist1"><code>%cl</code></dt>
<dd>
<p>committer email local-part (the part before the <code>@</code> sign)</p>
</dd>
<dt class="hdlist1"><code>%cL</code></dt>
<dd>
<p>committer local-part (see <code>%cl</code>) respecting .mailmap, see
<a href="git-shortlog.html">git-shortlog(1)</a> or <a href="git-blame.html">git-blame(1)</a>)</p>
</dd>
<dt class="hdlist1"><code>%cd</code></dt>
<dd>
<p>committer date (format respects --date= option)</p>
</dd>
<dt class="hdlist1"><code>%cD</code></dt>
<dd>
<p>committer date, RFC2822 style</p>
</dd>
<dt class="hdlist1"><code>%cr</code></dt>
<dd>
<p>committer date, relative</p>
</dd>
<dt class="hdlist1"><code>%ct</code></dt>
<dd>
<p>committer date, UNIX timestamp</p>
</dd>
<dt class="hdlist1"><code>%ci</code></dt>
<dd>
<p>committer date, ISO 8601-like format</p>
</dd>
<dt class="hdlist1"><code>%cI</code></dt>
<dd>
<p>committer date, strict ISO 8601 format</p>
</dd>
<dt class="hdlist1"><code>%cs</code></dt>
<dd>
<p>committer date, short format (<code>YYYY-MM-DD</code>)</p>
</dd>
<dt class="hdlist1"><code>%ch</code></dt>
<dd>
<p>committer date, human style (like the <code>--date=human</code> option of
<a href="git-rev-list.html">git-rev-list(1)</a>)</p>
</dd>
<dt class="hdlist1"><code>%d</code></dt>
<dd>
<p>ref names, like the --decorate option of <a href="git-log.html">git-log(1)</a></p>
</dd>
<dt class="hdlist1"><code>%D</code></dt>
<dd>
<p>ref names without the " (", ")" wrapping.</p>
</dd>
<dt class="hdlist1"><code>%</code>(<code>count</code>)</dt>
<dd>
<p>the number of a patch within a patch series. Used only in
<code>--commit-list-format</code> in <code>format-patch</code></p>
</dd>
<dt class="hdlist1"><code>%</code>(<code>total</code>)</dt>
<dd>
<p>the total number of patches in a patch series. Used only in
<code>--commit-list-format</code> in <code>format-patch</code></p>
</dd>
<dt class="hdlist1"><code>%</code>(<code>decorate</code>[<code>:</code><em>&lt;option&gt;</em><code>,..</code>.])</dt>
<dd>
<p>ref names with custom decorations. The <code>decorate</code> string may be followed by a
colon and zero or more comma-separated options. Option values may contain
literal formatting codes. These must be used for commas (<code>%x2C</code>) and closing
parentheses (<code>%x29</code>), due to their role in the option syntax.</p>
<div class="dlist">
<dl>
<dt class="hdlist1"><code>prefix=</code><em>&lt;value&gt;</em></dt>
<dd>
<p>Shown before the list of ref names.  Defaults to "&#160;(".</p>
</dd>
<dt class="hdlist1"><code>suffix=</code><em>&lt;value&gt;</em></dt>
<dd>
<p>Shown after the list of ref names.  Defaults to ")".</p>
</dd>
<dt class="hdlist1"><code>separator=</code><em>&lt;value&gt;</em></dt>
<dd>
<p>Shown between ref names.  Defaults to "<code>,</code>&#160;".</p>
</dd>
<dt class="hdlist1"><code>pointer=</code><em>&lt;value&gt;</em></dt>
<dd>
<p>Shown between HEAD and the branch it points to, if any.
Defaults to "&#160;&#8594;&#160;".</p>
</dd>
<dt class="hdlist1"><code>tag=</code><em>&lt;value&gt;</em></dt>
<dd>
<p>Shown before tag names. Defaults to "<code>tag:</code>&#160;".</p>
</dd>
</dl>
</div>
<div class="paragraph">
<p>For example, to produce decorations with no wrapping
or tag annotations, and spaces as separators:</p>
</div>
</dd>
</dl>
</div>
<div class="listingblock">
<div class="content">
<pre>    %(decorate:prefix=,suffix=,tag=,separator= )</pre>
</div>
</div>
<div class="dlist">
<dl>
<dt class="hdlist1"><code>%</code>(<code>describe</code>[<code>:</code><em>&lt;option&gt;</em><code>,..</code>.])</dt>
<dd>
<p>human-readable name, like <a href="git-describe.html">git-describe(1)</a>; empty string for
undescribable commits.  The <code>describe</code> string may be followed by a colon and
zero or more comma-separated options.  Descriptions can be inconsistent when
tags are added or removed at the same time.</p>
<div class="dlist">
<dl>
<dt class="hdlist1"><code>tags</code>[<code>=</code><em>&lt;bool-value&gt;</em>]</dt>
<dd>
<p>Instead of only considering annotated tags,
consider lightweight tags as well.</p>
</dd>
<dt class="hdlist1"><code>abbrev=</code><em>&lt;number&gt;</em></dt>
<dd>
<p>Instead of using the default number of hexadecimal digits
(which will vary according to the number of objects in the repository with a
default of 7) of the abbreviated object name, use <em>&lt;number&gt;</em> digits, or as many
digits as needed to form a unique object name.</p>
</dd>
<dt class="hdlist1"><code>match=</code><em>&lt;pattern&gt;</em></dt>
<dd>
<p>Only consider tags matching the given
<code>glob</code>(<code>7</code>) <em>&lt;pattern&gt;</em>, excluding the <code>refs/tags/</code> prefix.</p>
</dd>
<dt class="hdlist1"><code>exclude=</code><em>&lt;pattern&gt;</em></dt>
<dd>
<p>Do not consider tags matching the given
<code>glob</code>(<code>7</code>) <em>&lt;pattern&gt;</em>, excluding the <code>refs/tags/</code> prefix.</p>
</dd>
</dl>
</div>
</dd>
<dt class="hdlist1"><code>%S</code></dt>
<dd>
<p>ref name given on the command line by which the commit was reached
(like <code>git</code> <code>log</code> <code>--source</code>), only works with <code>git</code> <code>log</code></p>
</dd>
<dt class="hdlist1"><code>%e</code></dt>
<dd>
<p>encoding</p>
</dd>
<dt class="hdlist1"><code>%s</code></dt>
<dd>
<p>subject</p>
</dd>
<dt class="hdlist1"><code>%f</code></dt>
<dd>
<p>sanitized subject line, suitable for a filename</p>
</dd>
<dt class="hdlist1"><code>%b</code></dt>
<dd>
<p>body</p>
</dd>
<dt class="hdlist1"><code>%B</code></dt>
<dd>
<p>raw body (unwrapped subject and body)</p>
</dd>
<dt class="hdlist1"><code>%N</code></dt>
<dd>
<p>commit notes</p>
</dd>
<dt class="hdlist1"><code>%GG</code></dt>
<dd>
<p>raw verification message from GPG for a signed commit</p>
</dd>
<dt class="hdlist1"><code>%G</code>?</dt>
<dd>
<p>show "G" for a good (valid) signature,
"B" for a bad signature,
"U" for a good signature with unknown validity,
"X" for a good signature that has expired,
"Y" for a good signature made by an expired key,
"R" for a good signature made by a revoked key,
"E" if the signature cannot be checked (e.g. missing key)
and "N" for no signature</p>
</dd>
<dt class="hdlist1"><code>%GS</code></dt>
<dd>
<p>show the name of the signer for a signed commit</p>
</dd>
<dt class="hdlist1"><code>%GK</code></dt>
<dd>
<p>show the key used to sign a signed commit</p>
</dd>
<dt class="hdlist1"><code>%GF</code></dt>
<dd>
<p>show the fingerprint of the key used to sign a signed commit</p>
</dd>
<dt class="hdlist1"><code>%GP</code></dt>
<dd>
<p>show the fingerprint of the primary key whose subkey was used
to sign a signed commit</p>
</dd>
<dt class="hdlist1"><code>%GT</code></dt>
<dd>
<p>show the trust level for the key used to sign a signed commit</p>
</dd>
<dt class="hdlist1"><code>%gD</code></dt>
<dd>
<p>reflog selector, e.g., <code>refs/stash@</code>{1} or <code>refs/stash@</code>{2
<code>minutes</code> <code>ago</code>}; the format follows the rules described for the
<code>-g</code> option. The portion before the <code>@</code> is the refname as
given on the command line (so <code>git</code> <code>log</code> <code>-g</code> <code>refs/heads/master</code>
would yield <code>refs/heads/master@</code>{0}).</p>
</dd>
<dt class="hdlist1"><code>%gd</code></dt>
<dd>
<p>shortened reflog selector; same as <code>%gD</code>, but the refname
portion is shortened for human readability (so
<code>refs/heads/master</code> becomes just <code>master</code>).</p>
</dd>
<dt class="hdlist1"><code>%gn</code></dt>
<dd>
<p>reflog identity name</p>
</dd>
<dt class="hdlist1"><code>%gN</code></dt>
<dd>
<p>reflog identity name (respecting .mailmap, see
<a href="git-shortlog.html">git-shortlog(1)</a> or <a href="git-blame.html">git-blame(1)</a>)</p>
</dd>
<dt class="hdlist1"><code>%ge</code></dt>
<dd>
<p>reflog identity email</p>
</dd>
<dt class="hdlist1"><code>%gE</code></dt>
<dd>
<p>reflog identity email (respecting .mailmap, see
<a href="git-shortlog.html">git-shortlog(1)</a> or <a href="git-blame.html">git-blame(1)</a>)</p>
</dd>
<dt class="hdlist1"><code>%gs</code></dt>
<dd>
<p>reflog subject</p>
</dd>
<dt class="hdlist1"><code>%</code>(<code>trailers</code>[<code>:</code><em>&lt;option&gt;</em><code>,..</code>.])</dt>
<dd>
<p>display the trailers of the body as interpreted by
<a href="git-interpret-trailers.html">git-interpret-trailers(1)</a>. The <code>trailers</code> string may be followed by
a colon and zero or more comma-separated options. If any option is provided
multiple times, the last occurrence wins.</p>
<div class="dlist">
<dl>
<dt class="hdlist1"><code>key=</code><em>&lt;key&gt;</em></dt>
<dd>
<p>only show trailers with specified &lt;key&gt;. Matching is done
case-insensitively and trailing colon is optional. If option is
given multiple times trailer lines matching any of the keys are
shown. This option automatically enables the <code>only</code> option so that
non-trailer lines in the trailer block are hidden. If that is not
desired it can be disabled with <code>only=false</code>.  E.g.,
<code>%</code>(<code>trailers:key=Reviewed-by</code>) shows trailer lines with key
<code>Reviewed-by</code>.</p>
</dd>
<dt class="hdlist1"><code>only</code>[<code>=</code><em>&lt;bool&gt;</em>]</dt>
<dd>
<p>select whether non-trailer lines from the trailer
block should be included.</p>
</dd>
<dt class="hdlist1"><code>separator=</code><em>&lt;sep&gt;</em></dt>
<dd>
<p>specify the separator inserted between trailer
lines. Defaults to a line feed character. The string &lt;sep&gt; may contain
the literal formatting codes described above. To use comma as
separator one must use <code>%x2C</code> as it would otherwise be parsed as
next option. E.g., <code>%</code>(<code>trailers:key=Ticket,separator=%x2C</code> )
shows all trailer lines whose key is <code>Ticket</code> separated by a comma
and a space.</p>
</dd>
<dt class="hdlist1"><code>unfold</code>[<code>=</code><em>&lt;bool&gt;</em>]</dt>
<dd>
<p>make it behave as if interpret-trailer&#8217;s <code>--unfold</code>
option was given. E.g.,
<code>%</code>(<code>trailers:only,unfold=true</code>) unfolds and shows all trailer lines.</p>
</dd>
<dt class="hdlist1"><code>keyonly</code>[<code>=</code><em>&lt;bool&gt;</em>]</dt>
<dd>
<p>only show the key part of the trailer.</p>
</dd>
<dt class="hdlist1"><code>valueonly</code>[<code>=</code><em>&lt;bool&gt;</em>]</dt>
<dd>
<p>only show the value part of the trailer.</p>
</dd>
<dt class="hdlist1"><code>key_value_separator=</code><em>&lt;sep&gt;</em></dt>
<dd>
<p>specify the separator inserted between
the key and value of each trailer. Defaults to ": ". Otherwise it
shares the same semantics as <code>separator=</code><em>&lt;sep&gt;</em> above.</p>
</dd>
</dl>
</div>
</dd>
</dl>
</div>
<div class="admonitionblock note">
<table>
<tr>
<td class="icon">
<div class="title">Note</div>
</td>
<td class="content">
Some placeholders may depend on other options given to the
revision traversal engine. For example, the <code>%g*</code> reflog options will
insert an empty string unless we are traversing reflog entries (e.g., by
<code>git</code> <code>log</code> <code>-g</code>). The <code>%d</code> and <code>%D</code> placeholders will use the "short"
decoration format if <code>--decorate</code> was not already provided on the command
line.
</td>
</tr>
</table>
</div>
<div class="paragraph">
<p>The boolean options accept an optional value [<code>=</code><em>&lt;bool-value&gt;</em>]. The
values taken by <code>--type=bool</code> <a href="git-config.html">git-config(1)</a>, like <code>yes</code> and <code>off</code>,
are all accepted.  Giving a boolean option without <code>=</code><em>&lt;value&gt;</em> is
equivalent to giving it with <code>=true</code>.</p>
</div>
<div class="paragraph">
<p>If you add a <code>+</code> (plus sign) after <code>%</code> of a placeholder, a line-feed
is inserted immediately before the expansion if and only if the
placeholder expands to a non-empty string.</p>
</div>
<div class="paragraph">
<p>If you add a <code>-</code> (minus sign) after <code>%</code> of a placeholder, all consecutive
line-feeds immediately preceding the expansion are deleted if and only if the
placeholder expands to an empty string.</p>
</div>
<div class="paragraph">
<p>If you add a ' ' (space) after <code>%</code> of a placeholder, a space
is inserted immediately before the expansion if and only if the
placeholder expands to a non-empty string.</p>
</div>
</div>
</div>
</li>
</ul>
</div>
</dd>
<dt class="hdlist1"><code>tformat:</code></dt>
<dd>
<p>The <code>tformat:</code> format works exactly like <code>format:</code>, except that it
provides "terminator" semantics instead of "separator" semantics. In
other words, each commit has the message terminator character (usually a
newline) appended, rather than a separator placed between entries.
This means that the final entry of a single-line format will be properly
terminated with a new line, just as the "oneline" format does.
For example:</p>
<div class="listingblock">
<div class="content">
<pre>$ git log -2 --pretty=format:%h 4da45bef \
  | perl -pe '$_ .= " -- NO NEWLINE\n" unless /\n/'
4da45be
7134973 -- NO NEWLINE

$ git log -2 --pretty=tformat:%h 4da45bef \
  | perl -pe '$_ .= " -- NO NEWLINE\n" unless /\n/'
4da45be
7134973</pre>
</div>
</div>
<div class="paragraph">
<p>In addition, any unrecognized string that has a <code>%</code> in it is interpreted
as if it has <code>tformat:</code> in front of it.  For example, these two are
equivalent:</p>
</div>
<div class="listingblock">
<div class="content">
<pre>$ git log -2 --pretty=tformat:%h 4da45bef
$ git log -2 --pretty=%h 4da45bef</pre>
</div>
</div>
</dd>
</dl>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_diff_formatting">DIFF FORMATTING</h2>
<div class="sectionbody">
<div class="paragraph">
<p>By default, <code>git</code> <code>log</code> does not generate any diff output. The options
below can be used to show the changes made by each commit.</p>
</div>
<div class="paragraph">
<p>Note that unless one of <code>--diff-merges</code> variants (including short
<code>-m</code>, <code>-c</code>, <code>--cc</code>, and <code>--dd</code> options) is explicitly given, merge commits
will not show a diff, even if a diff format like <code>--patch</code> is
selected, nor will they match search options like <code>-S</code>. The exception
is when <code>--first-parent</code> is in use, in which case <code>first-parent</code> is
the default format for merge commits.</p>
</div>
<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>).</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>-m</code></dt>
<dd>
<p>Show diffs for merge commits in the default format. This is
similar to <code>--diff-merges=on</code>, except <code>-m</code> will
produce no output unless <code>-p</code> is given as well.</p>
</dd>
<dt class="hdlist1"><code>-c</code></dt>
<dd>
<p>Produce combined diff output for merge commits.
Shortcut for <code>--diff-merges=combined</code> <code>-p</code>.</p>
</dd>
<dt class="hdlist1"><code>--cc</code></dt>
<dd>
<p>Produce dense combined diff output for merge commits.
Shortcut for <code>--diff-merges=dense-combined</code> <code>-p</code>.</p>
</dd>
<dt class="hdlist1"><code>--dd</code></dt>
<dd>
<p>Produce diff with respect to first parent for both merge and
regular commits.
Shortcut for <code>--diff-merges=first-parent</code> <code>-p</code>.</p>
</dd>
<dt class="hdlist1"><code>--remerge-diff</code></dt>
<dd>
<p>Produce remerge-diff output for merge commits.
Shortcut for <code>--diff-merges=remerge</code> <code>-p</code>.</p>
</dd>
<dt class="hdlist1"><code>--no-diff-merges</code></dt>
<dd>
<p>Synonym for <code>--diff-merges=off</code>.</p>
</dd>
<dt class="hdlist1"><code>--diff-merges=</code><em>&lt;format&gt;</em></dt>
<dd>
<p>Specify diff format to be used for merge commits. Default is
`off` unless <code>--first-parent</code> is in use, in
which case <code>first-parent</code> is the default.</p>
<div class="paragraph">
<p>The following formats are supported:</p>
</div>
<div class="openblock">
<div class="content">
<div class="dlist">
<dl>
<dt class="hdlist1"><code>off</code></dt>
<dt class="hdlist1"><code>none</code></dt>
<dd>
<p>Disable output of diffs for merge commits. Useful to override
implied value.</p>
</dd>
<dt class="hdlist1"><code>on</code></dt>
<dt class="hdlist1"><code>m</code></dt>
<dd>
<p>Make diff output for merge commits to be shown in the default
format. The default format can be changed using
<code>log.diffMerges</code> configuration variable, whose default value
is <code>separate</code>.</p>
</dd>
<dt class="hdlist1"><code>first-parent</code></dt>
<dt class="hdlist1"><code>1</code></dt>
<dd>
<p>Show full diff with respect to first parent. This is the same
format as <code>--patch</code> produces for non-merge commits.</p>
</dd>
<dt class="hdlist1"><code>separate</code></dt>
<dd>
<p>Show full diff with respect to each of parents.
Separate log entry and diff is generated for each parent.</p>
</dd>
<dt class="hdlist1"><code>combined</code></dt>
<dt class="hdlist1"><code>c</code></dt>
<dd>
<p>Show differences from each of the parents to the merge
result simultaneously instead of showing pairwise diff between
a parent and the result one at a time. Furthermore, it lists
only files which were modified from all parents.</p>
</dd>
<dt class="hdlist1"><code>dense-combined</code></dt>
<dt class="hdlist1"><code>cc</code></dt>
<dd>
<p>Further compress output produced by <code>--diff-merges=combined</code>
by omitting uninteresting hunks whose contents in the parents
have only two variants and the merge result picks one of them
without modification.</p>
</dd>
<dt class="hdlist1"><code>remerge</code></dt>
<dt class="hdlist1"><code>r</code></dt>
<dd>
<p>Remerge two-parent merge commits to create a temporary tree
object&#8212;&#8203;potentially containing files with conflict markers
and such.  A diff is then shown between that temporary tree
and the actual merge commit.</p>
</dd>
</dl>
</div>
</div>
</div>
<div class="paragraph">
<p>The output emitted when this option is used is subject to change, and
so is its interaction with other options (unless explicitly
documented).</p>
</div>
</dd>
<dt class="hdlist1"><code>--combined-all-paths</code></dt>
<dd>
<p>Cause combined diffs (used for merge commits) to
list the name of the file from all parents.  It thus only has
effect when <code>--diff-merges=</code>[<code>dense-</code>]<code>combined</code> is in use, and
is likely only useful if filename changes are detected (i.e.
when either rename or copy detection have been requested).</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>For each commit, show a summary of changes using the raw diff
format. See the "RAW OUTPUT FORMAT" section of
<a href="git-diff.html">git-diff(1)</a>. This is different from showing the log
itself in raw format, which you can achieve with
<code>--format=raw</code>.</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>-t</code></dt>
<dd>
<p>Show the tree objects in the diff output.</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>Separate the commits with <em>NUL</em>s instead of newlines.</p>
<div class="paragraph">
<p>Also, when <code>--raw</code> or <code>--numstat</code> has been given, do not munge
pathnames and use <em>NUL</em>s as output field terminators.</p>
</div>
<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>.</p>
</dd>
<dt class="hdlist1"><code>--no-color</code></dt>
<dd>
<p>Turn off colored diff.
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.
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>.
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>
<div class="paragraph">
<p>The <code>--word-diff</code> option operates by taking the same line-by-line
diff that is produced without the option and computing
word-by-word changes within each hunk.  This may produce a
larger diff than a dedicated word-diff tool would.  If Git
acquires a different implementation in the future, the output
may change.  Note that this is similar to the <code>--diff-algorithm</code>
option, which may also change the output.</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>If generating diffs, detect and report renames for each commit.
For following files across renames while traversing history, see
<code>--follow</code>.
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>--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>
</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="_examples">EXAMPLES</h2>
<div class="sectionbody">
<div class="dlist">
<dl>
<dt class="hdlist1"><code>git</code> <code>log</code> <code>--no-merges</code></dt>
<dd>
<p>Show the whole commit history, but skip any merges</p>
</dd>
<dt class="hdlist1"><code>git</code> <code>log</code> <code>v2.6.12</code><code>..</code> <code>include/scsi</code> <code>drivers/scsi</code></dt>
<dd>
<p>Show all commits since version <em>v2.6.12</em> that changed any file
in the <code>include/scsi</code> or <code>drivers/scsi</code> subdirectories</p>
</dd>
<dt class="hdlist1"><code>git</code> <code>log</code> <code>--since=</code>"2 <code>weeks</code> <code>ago</code>" <code>--</code> <code>gitk</code></dt>
<dd>
<p>Show the changes during the last two weeks to the file <code>gitk</code>.
The <code>--</code> is necessary to avoid confusion with the <strong>branch</strong> named
<code>gitk</code></p>
</dd>
<dt class="hdlist1"><code>git</code> <code>log</code> <code>--name-status</code> <code>release</code><code>..</code><code>test</code></dt>
<dd>
<p>Show the commits that are in the "<code>test</code>" branch but not yet
in the "<code>release</code>" branch, along with the list of paths
each commit modifies.</p>
</dd>
<dt class="hdlist1"><code>git</code> <code>log</code> <code>--follow</code> <code>builtin/rev-list.c</code></dt>
<dd>
<p>Shows the commits that changed <code>builtin/rev-list.c</code>, including
those commits that occurred before the file was given its
present name.</p>
</dd>
<dt class="hdlist1"><code>git</code> <code>log</code> <code>--branches</code> <code>--not</code> <code>--remotes=origin</code></dt>
<dd>
<p>Shows all commits that are in any of local branches but not in
any of remote-tracking branches for <code>origin</code> (what you have that
origin doesn&#8217;t).</p>
</dd>
<dt class="hdlist1"><code>git</code> <code>log</code> <code>master</code> <code>--not</code> <code>--remotes=*/master</code></dt>
<dd>
<p>Shows all commits that are in local master but not in any remote
repository master branches.</p>
</dd>
<dt class="hdlist1"><code>git</code> <code>log</code> <code>-p</code> <code>-m</code> <code>--first-parent</code></dt>
<dd>
<p>Shows the history including change diffs, but only from the
&#8220;main branch&#8221; perspective, skipping commits that come from merged
branches, and showing full diffs of changes introduced by the merges.
This makes sense only when following a strict policy of merging all
topic branches when staying on a single integration branch.</p>
</dd>
<dt class="hdlist1"><code>git</code> <code>log</code> <code>-L</code> '/int <code>main/</code>',/^}/:main.<code>c</code></dt>
<dd>
<p>Shows how the function <code>main</code>() in the file <code>main.c</code> evolved
over time.</p>
</dd>
<dt class="hdlist1"><code>git</code> <code>log</code> <code>-3</code></dt>
<dd>
<p>Limits the number of commits to show to 3.</p>
</dd>
</dl>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_discussion">DISCUSSION</h2>
<div class="sectionbody">
<div class="paragraph">
<p>Git is to some extent character encoding agnostic.</p>
</div>
<div class="ulist">
<ul>
<li>
<p>The contents of the blob objects are uninterpreted sequences
of bytes.  There is no encoding translation at the core
level.</p>
</li>
<li>
<p>Path names are encoded in UTF-8 normalization form C. This
applies to tree objects, the index file, ref names, as well as
path names in command line arguments, environment variables
and config files (.<code>git/config</code> (see <a href="git-config.html">git-config(1)</a>),
<a href="gitignore.html">gitignore(5)</a>, <a href="gitattributes.html">gitattributes(5)</a> and
<a href="gitmodules.html">gitmodules(5)</a>).</p>
<div class="paragraph">
<p>Note that Git at the core level treats path names simply as
sequences of non-NUL bytes, there are no path name encoding
conversions (except on Mac and Windows). Therefore, using
non-ASCII path names will mostly work even on platforms and file
systems that use legacy extended ASCII encodings. However,
repositories created on such systems will not work properly on
UTF-8-based systems (e.g. Linux, Mac, Windows) and vice versa.
Additionally, many Git-based tools simply assume path names to
be UTF-8 and will fail to display other encodings correctly.</p>
</div>
</li>
<li>
<p>Commit log messages are typically encoded in UTF-8, but other
extended ASCII encodings are also supported. This includes
ISO-8859-x, CP125x and many others, but <em>not</em> UTF-16/32,
EBCDIC and CJK multi-byte encodings (GBK, Shift-JIS, Big5,
EUC-x, CP9xx etc.).</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>Although we encourage that the commit log messages are encoded
in UTF-8, both the core and Git Porcelain are designed not to
force UTF-8 on projects.  If all participants of a particular
project find it more convenient to use legacy encodings, Git
does not forbid it.  However, there are a few things to keep in
mind.</p>
</div>
<div class="olist arabic">
<ol class="arabic">
<li>
<p><code>git</code> <code>commit</code> and <code>git</code> <code>commit-tree</code> issue
a warning if the commit log message given to it does not look
like a valid UTF-8 string, unless you explicitly say your
project uses a legacy encoding.  The way to say this is to
have <code>i18n.commitEncoding</code> in .<code>git/config</code> file, like this:</p>
<div class="listingblock">
<div class="content">
<pre>[i18n]
        commitEncoding = ISO-8859-1</pre>
</div>
</div>
<div class="paragraph">
<p>Commit objects created with the above setting record the value
of <code>i18n.commitEncoding</code> in their <code>encoding</code> header.  This is to
help other people who look at them later.  Lack of this header
implies that the commit log message is encoded in UTF-8.</p>
</div>
</li>
<li>
<p><code>git</code> <code>log</code>, <code>git</code> <code>show</code>, <code>git</code> <code>blame</code> and friends look at the
<code>encoding</code> header of a commit object, and try to re-code the
log message into UTF-8 unless otherwise specified.  You can
specify the desired output encoding with
<code>i18n.logOutputEncoding</code> in .<code>git/config</code> file, like this:</p>
<div class="listingblock">
<div class="content">
<pre>[i18n]
        logOutputEncoding = ISO-8859-1</pre>
</div>
</div>
<div class="paragraph">
<p>If you do not have this configuration variable, the value of
<code>i18n.commitEncoding</code> is used instead.</p>
</div>
</li>
</ol>
</div>
<div class="paragraph">
<p>Note that we deliberately chose not to re-code the commit log
message when a commit is made to force UTF-8 at the commit
object level, because re-coding to UTF-8 is not necessarily a
reversible operation.</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_configuration">CONFIGURATION</h2>
<div class="sectionbody">
<div class="paragraph">
<p>See <a href="git-config.html">git-config(1)</a> for core variables and <a href="git-diff.html">git-diff(1)</a>
for settings related to diff generation.</p>
</div>
<div class="dlist">
<dl>
<dt class="hdlist1"><code>format.pretty</code></dt>
<dd>
<p>Default for the <code>--format</code> option.  (See <em>Pretty Formats</em> above.)
Defaults to <code>medium</code>.</p>
</dd>
<dt class="hdlist1"><code>i18n.logOutputEncoding</code></dt>
<dd>
<p>Encoding to use when displaying logs.  (See <em>Discussion</em> above.)
Defaults to the value of <code>i18n.commitEncoding</code> if set, and UTF-8
otherwise.</p>
</dd>
</dl>
</div>
<div class="paragraph">
<p>Everything above this line in this section isn&#8217;t included from the
<a href="git-config.html">git-config(1)</a> documentation. The content that follows is the
same as what&#8217;s found there:</p>
</div>
<div class="dlist">
<dl>
<dt class="hdlist1"><code>log.abbrevCommit</code></dt>
<dd>
<p>If <code>true</code>, make
<a href="git-log.html">git-log(1)</a>, <a href="git-show.html">git-show(1)</a>, and
<a href="git-whatchanged.html">git-whatchanged(1)</a>
assume <code>--abbrev-commit</code>. You may
override this option with <code>--no-abbrev-commit</code>.</p>
</dd>
<dt class="hdlist1"><code>log.date</code></dt>
<dd>
<p>Set the default date-time mode for the <code>log</code> command.
Setting a value for log.date is similar to using <code>git</code> <code>log</code>'s
<code>--date</code> option.  See <a href="git-log.html">git-log(1)</a> for details.</p>
<div class="paragraph">
<p>If the format is set to "auto:foo" and the pager is in use, format
"foo" will be used for the date format. Otherwise, "default" will
be used.</p>
</div>
</dd>
<dt class="hdlist1"><code>log.decorate</code></dt>
<dd>
<p>Print out the ref names of any commits that are shown by the log
command. Possible values are:</p>
<div class="openblock">
<div class="content">
<div class="dlist">
<dl>
<dt class="hdlist1"><code>short</code></dt>
<dd>
<p>the ref name prefixes <code>refs/heads/</code>, <code>refs/tags/</code> and
<code>refs/remotes/</code> are not printed.</p>
</dd>
<dt class="hdlist1"><code>full</code></dt>
<dd>
<p>the full ref name (including prefix) are printed.</p>
</dd>
<dt class="hdlist1"><code>auto</code></dt>
<dd>
<p>if the output is going to a terminal,
the ref names are shown as if <code>short</code> were given, otherwise no ref
names are shown.</p>
</dd>
</dl>
</div>
</div>
</div>
<div class="paragraph">
<p>This is the same as the <code>--decorate</code> option of the <code>git</code> <code>log</code>.</p>
</div>
</dd>
<dt class="hdlist1"><code>log.initialDecorationSet</code></dt>
<dd>
<p>By default, <code>git</code> <code>log</code> only shows decorations for certain known ref
namespaces. If <em>all</em> is specified, then show all refs as
decorations.</p>
</dd>
<dt class="hdlist1"><code>log.excludeDecoration</code></dt>
<dd>
<p>Exclude the specified patterns from the log decorations. This is
similar to the <code>--decorate-refs-exclude</code> command-line option, but
the config option can be overridden by the <code>--decorate-refs</code>
option.</p>
</dd>
<dt class="hdlist1"><code>log.diffMerges</code></dt>
<dd>
<p>Set diff format to be used when <code>--diff-merges=on</code> is
specified, see <code>--diff-merges</code> in <a href="git-log.html">git-log(1)</a> for
details. Defaults to <code>separate</code>.</p>
</dd>
<dt class="hdlist1"><code>log.follow</code></dt>
<dd>
<p>If <code>true</code>, <code>git</code> <code>log</code> will act as if the <code>--follow</code> option was used when
a single &lt;path&gt; is given.  This has the same limitations as <code>--follow</code>,
i.e. it cannot be used to follow multiple files.</p>
</dd>
<dt class="hdlist1"><code>log.graphColors</code></dt>
<dd>
<p>A list of colors, separated by commas, that can be used to draw
history lines in <code>git</code> <code>log</code> <code>--graph</code>.</p>
</dd>
<dt class="hdlist1"><code>log.graphIndent</code></dt>
<dd>
<p>If <code>true</code>, indent visual roots when rendering the graphs with <code>--graph</code>.
Set true by default. It can be overriden with <code>--</code>[<code>no-</code>]<code>graph-indent</code>.</p>
</dd>
<dt class="hdlist1"><code>log.showRoot</code></dt>
<dd>
<p>If true, the initial commit will be shown as a big creation event.
This is equivalent to a diff against an empty tree.
Tools like <a href="git-log.html">git-log(1)</a> or <a href="git-whatchanged.html">git-whatchanged(1)</a>, which
normally hide the root commit will now show it. True by default.</p>
</dd>
<dt class="hdlist1"><code>log.showSignature</code></dt>
<dd>
<p>If true, makes <a href="git-log.html">git-log(1)</a>, <a href="git-show.html">git-show(1)</a>, and
<a href="git-whatchanged.html">git-whatchanged(1)</a> assume <code>--show-signature</code>.</p>
</dd>
<dt class="hdlist1"><code>log.mailmap</code></dt>
<dd>
<p>If true, makes <a href="git-log.html">git-log(1)</a>, <a href="git-show.html">git-show(1)</a>, and
<a href="git-whatchanged.html">git-whatchanged(1)</a> assume <code>--use-mailmap</code>, otherwise
assume <code>--no-use-mailmap</code>. True by default.</p>
</dd>
<dt class="hdlist1"><code>notes.mergeStrategy</code></dt>
<dd>
<p>Which merge strategy to choose by default when resolving notes
conflicts.  Must be one of <code>manual</code>, <code>ours</code>, <code>theirs</code>, <code>union</code>, or
<code>cat_sort_uniq</code>.  Defaults to <code>manual</code>.  See the "NOTES MERGE STRATEGIES"
section of <a href="git-notes.html">git-notes(1)</a> for more information on each strategy.</p>
<div class="paragraph">
<p>This setting can be overridden by passing the <code>--strategy</code> option to
<a href="git-notes.html">git-notes(1)</a>.</p>
</div>
</dd>
<dt class="hdlist1"><code>notes.</code><em>&lt;name&gt;</em><code>.mergeStrategy</code></dt>
<dd>
<p>Which merge strategy to choose when doing a notes merge into
<code>refs/notes/</code><em>&lt;name&gt;</em>.  This overrides the more general
<code>notes.mergeStrategy</code>.  See the "NOTES MERGE STRATEGIES" section in
<a href="git-notes.html">git-notes(1)</a> for more information on the available strategies.</p>
</dd>
<dt class="hdlist1"><code>notes.displayRef</code></dt>
<dd>
<p>Which ref (or refs, if a glob or specified more than once), in
addition to the default set by <code>core.notesRef</code> or
<code>GIT_NOTES_REF</code>, to read notes from when showing commit
messages with the <code>git</code> <code>log</code> family of commands.</p>
<div class="paragraph">
<p>This setting can be overridden with the <code>GIT_NOTES_DISPLAY_REF</code>
environment variable, which must be a colon separated list of refs or
globs.</p>
</div>
<div class="paragraph">
<p>A warning will be issued for refs that do not exist,
but a glob that does not match any refs is silently ignored.</p>
</div>
<div class="paragraph">
<p>This setting can be disabled by the <code>--no-notes</code> option to the <a href="git-log.html">git-log(1)</a>
family of commands, or by the <code>--notes=</code><em>&lt;ref&gt;</em> option accepted by
those commands.</p>
</div>
<div class="paragraph">
<p>The effective value of <code>core.notesRef</code> (possibly overridden by
<code>GIT_NOTES_REF</code>) is also implicitly added to the list of refs to be
displayed.</p>
</div>
</dd>
<dt class="hdlist1"><code>notes.rewrite.</code><em>&lt;command&gt;</em></dt>
<dd>
<p>When rewriting commits with <em>&lt;command&gt;</em> (currently <code>amend</code> or
<code>rebase</code>), if this variable is <code>false</code>, git will not copy
notes from the original to the rewritten commit.  Defaults to
<code>true</code>.  See also <code>notes.rewriteRef</code> below.</p>
<div class="paragraph">
<p>This setting can be overridden with the <code>GIT_NOTES_REWRITE_REF</code>
environment variable, which must be a colon separated list of refs or
globs.</p>
</div>
</dd>
<dt class="hdlist1"><code>notes.rewriteMode</code></dt>
<dd>
<p>When copying notes during a rewrite (see the
<code>notes.rewrite.</code><em>&lt;command&gt;</em> option), determines what to do if
the target commit already has a note.  Must be one of
<code>overwrite</code>, <code>concatenate</code>, <code>cat_sort_uniq</code>, or <code>ignore</code>.
Defaults to <code>concatenate</code>.</p>
<div class="paragraph">
<p>This setting can be overridden with the <code>GIT_NOTES_REWRITE_MODE</code>
environment variable.</p>
</div>
</dd>
<dt class="hdlist1"><code>notes.rewriteRef</code></dt>
<dd>
<p>When copying notes during a rewrite, specifies the (fully
qualified) ref whose notes should be copied.  May be a glob,
in which case notes in all matching refs will be copied.  You
may also specify this configuration several times.</p>
<div class="paragraph">
<p>Does not have a default value; you must configure this variable to
enable note rewriting.  Set it to <code>refs/notes/commits</code> to enable
rewriting for the default commit notes.</p>
</div>
<div class="paragraph">
<p>Can be overridden with the <code>GIT_NOTES_REWRITE_REF</code> environment variable.
See <code>notes.rewrite.</code><em>&lt;command&gt;</em> above for a further description of its format.</p>
</div>
</dd>
</dl>
</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 2026-05-20 21:46:40 -0700
</div>
</div>
</body>
</html>