<!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.23"/>
<title>git-status(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>code{display:block}
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 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-status(1) Manual Page</h1>
<h2 id="_name">NAME</h2>
<div class="sectionbody">
<p>git-status - Show the working tree status</p>
</div>
</div>
<div id="content">
<div class="sect1">
<h2 id="_synopsis">SYNOPSIS</h2>
<div class="sectionbody">
<div class="verseblock">
<pre class="content"><em>git status</em> [&lt;options&gt;] [--] [&lt;pathspec&gt;&#8230;&#8203;]</pre>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_description">DESCRIPTION</h2>
<div class="sectionbody">
<div class="paragraph">
<p>Displays paths that have differences between the index file and the
current HEAD commit, paths that have differences between the working
tree and the index file, and paths in the working tree that are not
tracked by Git (and are not ignored by <a href="gitignore.html">gitignore(5)</a>). The first
are what you <em>would</em> commit by running <code>git</code> <code>commit</code>; the second and
third are what you <em>could</em> commit by running <em>git add</em> before running
<code>git</code> <code>commit</code>.</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_options">OPTIONS</h2>
<div class="sectionbody">
<div class="dlist">
<dl>
<dt class="hdlist1">-s</dt>
<dt class="hdlist1">--short</dt>
<dd>
<p>Give the output in the short-format.</p>
</dd>
<dt class="hdlist1">-b</dt>
<dt class="hdlist1">--branch</dt>
<dd>
<p>Show the branch and tracking info even in short-format.</p>
</dd>
<dt class="hdlist1">--show-stash</dt>
<dd>
<p>Show the number of entries currently stashed away.</p>
</dd>
<dt class="hdlist1">--porcelain[=&lt;version&gt;]</dt>
<dd>
<p>Give the output in an easy-to-parse format for scripts.
This is similar to the short output, but will remain stable
across Git versions and regardless of user configuration. See
below for details.</p>
<div class="paragraph">
<p>The version parameter is used to specify the format version.
This is optional and defaults to the original version <em>v1</em> format.</p>
</div>
</dd>
<dt class="hdlist1">--long</dt>
<dd>
<p>Give the output in the long-format. This is the default.</p>
</dd>
<dt class="hdlist1">-v</dt>
<dt class="hdlist1">--verbose</dt>
<dd>
<p>In addition to the names of files that have been changed, also
show the textual changes that are staged to be committed
(i.e., like the output of <code>git</code> <code>diff</code> <code>--cached</code>). If <code>-v</code> is specified
twice, then also show the changes in the working tree that
have not yet been staged (i.e., like the output of <code>git</code> <code>diff</code>).</p>
</dd>
<dt class="hdlist1">-u[&lt;mode&gt;]</dt>
<dt class="hdlist1">--untracked-files[=&lt;mode&gt;]</dt>
<dd>
<p>Show untracked files.</p>
<div class="openblock">
<div class="content">
<div class="paragraph">
<p>The mode parameter is used to specify the handling of untracked files.
It is optional: it defaults to <em>all</em>, and if specified, it must be
stuck to the option (e.g. <code>-uno</code>, but not <code>-u</code> <code>no</code>).</p>
</div>
<div class="paragraph">
<p>The possible options are:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><em>no</em>     - Show no untracked files.</p>
</li>
<li>
<p><em>normal</em> - Shows untracked files and directories.</p>
</li>
<li>
<p><em>all</em>    - Also shows individual files in untracked directories.</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>When <code>-u</code> option is not used, untracked files and directories are
shown (i.e. the same as specifying <code>normal</code>), to help you avoid
forgetting to add newly created files.  Because it takes extra work
to find untracked files in the filesystem, this mode may take some
time in a large working tree.
Consider enabling untracked cache and split index if supported (see
<code>git</code> <code>update-index</code> <code>--untracked-cache</code> and <code>git</code> <code>update-index</code>
<code>--split-index</code>), Otherwise you can use <code>no</code> to have <code>git</code> <code>status</code>
return more quickly without showing untracked files.
All usual spellings for Boolean value <code>true</code> are taken as <code>normal</code>
and <code>false</code> as <code>no</code>.</p>
</div>
<div class="paragraph">
<p>The default can be changed using the status.showUntrackedFiles
configuration variable documented in <a href="git-config.html">git-config(1)</a>.</p>
</div>
</div>
</div>
</dd>
<dt class="hdlist1">--ignore-submodules[=&lt;when&gt;]</dt>
<dd>
<p>Ignore changes to submodules when looking for changes. &lt;when&gt; can be
either "none", "untracked", "dirty" or "all", which is the default.
Using "none" will consider the submodule modified when it either contains
untracked or modified files or its HEAD differs from the commit recorded
in the superproject and can be used to override any settings of the
<em>ignore</em> option in <a href="git-config.html">git-config(1)</a> or <a href="gitmodules.html">gitmodules(5)</a>. When
"untracked" is used submodules are not considered dirty when they only
contain untracked content (but they are still scanned for modified
content). Using "dirty" ignores all changes to the work tree of submodules,
only changes to the commits stored in the superproject are shown (this was
the behavior before 1.7.0). Using "all" hides all changes to submodules
(and suppresses the output of submodule summaries when the config option
<code>status.submoduleSummary</code> is set).</p>
</dd>
<dt class="hdlist1">--ignored[=&lt;mode&gt;]</dt>
<dd>
<p>Show ignored files as well.</p>
<div class="openblock">
<div class="content">
<div class="paragraph">
<p>The mode parameter is used to specify the handling of ignored files.
It is optional: it defaults to <em>traditional</em>.</p>
</div>
<div class="paragraph">
<p>The possible options are:</p>
</div>
<div class="ulist">
<ul>
<li>
<p><em>traditional</em> - Shows ignored files and directories, unless
--untracked-files=all is specified, in which case
individual files in ignored directories are
displayed.</p>
</li>
<li>
<p><em>no</em>	        - Show no ignored files.</p>
</li>
<li>
<p><em>matching</em>    - Shows ignored files and directories matching an
ignore pattern.</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>When <em>matching</em> mode is specified, paths that explicitly match an
ignored pattern are shown. If a directory matches an ignore pattern,
then it is shown, but not paths contained in the ignored directory. If
a directory does not match an ignore pattern, but all contents are
ignored, then the directory is not shown, but all contents are shown.</p>
</div>
</div>
</div>
</dd>
<dt class="hdlist1">-z</dt>
<dd>
<p>Terminate entries with NUL, instead of LF.  This implies
the <code>--porcelain=v1</code> output format if no other format is given.</p>
</dd>
<dt class="hdlist1">--column[=&lt;options&gt;]</dt>
<dt class="hdlist1">--no-column</dt>
<dd>
<p>Display untracked files in columns. See configuration variable
<code>column.status</code> for option syntax. <code>--column</code> and <code>--no-column</code>
without options are equivalent to <em>always</em> and <em>never</em>
respectively.</p>
</dd>
<dt class="hdlist1">--ahead-behind</dt>
<dt class="hdlist1">--no-ahead-behind</dt>
<dd>
<p>Display or do not display detailed ahead/behind counts for the
branch relative to its upstream branch.  Defaults to true.</p>
</dd>
<dt class="hdlist1">--renames</dt>
<dt class="hdlist1">--no-renames</dt>
<dd>
<p>Turn on/off rename detection regardless of user configuration.
See also <a href="git-diff.html">git-diff(1)</a> <code>--no-renames</code>.</p>
</dd>
<dt class="hdlist1">--find-renames[=&lt;n&gt;]</dt>
<dd>
<p>Turn on rename detection, optionally setting the similarity
threshold.
See also <a href="git-diff.html">git-diff(1)</a> <code>--find-renames</code>.</p>
</dd>
<dt class="hdlist1">&lt;pathspec&gt;&#8230;&#8203;</dt>
<dd>
<p>See the <em>pathspec</em> entry in <a href="gitglossary.html">gitglossary(7)</a>.</p>
</dd>
</dl>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_output">OUTPUT</h2>
<div class="sectionbody">
<div class="paragraph">
<p>The output from this command is designed to be used as a commit
template comment.
The default, long format, is designed to be human readable,
verbose and descriptive.  Its contents and format are subject to change
at any time.</p>
</div>
<div class="paragraph">
<p>The paths mentioned in the output, unlike many other Git commands, are
made relative to the current directory if you are working in a
subdirectory (this is on purpose, to help cutting and pasting). See
the status.relativePaths config option below.</p>
</div>
<div class="sect2">
<h3 id="_short_format">Short Format</h3>
<div class="paragraph">
<p>In the short-format, the status of each path is shown as one of these
forms</p>
</div>
<div class="literalblock">
<div class="content">
<pre>XY PATH
XY ORIG_PATH -&gt; PATH</pre>
</div>
</div>
<div class="paragraph">
<p>where <code>ORIG_PATH</code> is where the renamed/copied contents came
from. <code>ORIG_PATH</code> is only shown when the entry is renamed or
copied. The <code>XY</code> is a two-letter status code.</p>
</div>
<div class="paragraph">
<p>The fields (including the <code>-</code>&gt;) are separated from each other by a
single space. If a filename contains whitespace or other nonprintable
characters, that field will be quoted in the manner of a C string
literal: surrounded by ASCII double quote (34) characters, and with
interior special characters backslash-escaped.</p>
</div>
<div class="paragraph">
<p>There are three different types of states that are shown using this format, and
each one uses the <code>XY</code> syntax differently:</p>
</div>
<div class="ulist">
<ul>
<li>
<p>When a merge is occurring and the merge was successful, or outside of a merge
situation, <code>X</code> shows the status of the index and <code>Y</code> shows the status of the
working tree.</p>
</li>
<li>
<p>When a merge conflict has occurred and has not yet been resolved, <code>X</code> and <code>Y</code>
show the state introduced by each head of the merge, relative to the common
ancestor. These paths are said to be <em>unmerged</em>.</p>
</li>
<li>
<p>When a path is untracked, <code>X</code> and <code>Y</code> are always the same, since they are
unknown to the index. ?? is used for untracked paths. Ignored files are
not listed unless <code>--ignored</code> is used; if it is, ignored files are indicated
by !!.</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>Note that the term <em>merge</em> here also includes rebases using the default
<code>--merge</code> strategy, cherry-picks, and anything else using the merge machinery.</p>
</div>
<div class="paragraph">
<p>In the following table, these three classes are shown in separate sections, and
these characters are used for <code>X</code> and <code>Y</code> fields for the first two sections that
show tracked paths:</p>
</div>
<div class="ulist">
<ul>
<li>
<p>' ' = unmodified</p>
</li>
<li>
<p><em>M</em> = modified</p>
</li>
<li>
<p><em>T</em> = file type changed (regular file, symbolic link or submodule)</p>
</li>
<li>
<p><em>A</em> = added</p>
</li>
<li>
<p><em>D</em> = deleted</p>
</li>
<li>
<p><em>R</em> = renamed</p>
</li>
<li>
<p><em>C</em> = copied (if config option status.renames is set to "copies")</p>
</li>
<li>
<p><em>U</em> = updated but unmerged</p>
</li>
</ul>
</div>
<div class="literalblock">
<div class="content">
<pre>X          Y     Meaning
-------------------------------------------------
         [AMD]   not updated
M        [ MTD]  updated in index
T        [ MTD]  type changed in index
A        [ MTD]  added to index
D                deleted from index
R        [ MTD]  renamed in index
C        [ MTD]  copied in index
[MTARC]          index and work tree matches
[ MTARC]    M    work tree changed since index
[ MTARC]    T    type changed in work tree since index
[ MTARC]    D    deleted in work tree
            R    renamed in work tree
            C    copied in work tree
-------------------------------------------------
D           D    unmerged, both deleted
A           U    unmerged, added by us
U           D    unmerged, deleted by them
U           A    unmerged, added by them
D           U    unmerged, deleted by us
A           A    unmerged, both added
U           U    unmerged, both modified
-------------------------------------------------
?           ?    untracked
!           !    ignored
-------------------------------------------------</pre>
</div>
</div>
<div class="paragraph">
<p>Submodules have more state and instead report</p>
</div>
<div class="ulist">
<ul>
<li>
<p><em>M</em> = the submodule has a different HEAD than recorded in the index</p>
</li>
<li>
<p><em>m</em> = the submodule has modified content</p>
</li>
<li>
<p><em>?</em> = the submodule has untracked files</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>This is since modified content or untracked files in a submodule cannot be added
via <code>git</code> <code>add</code> in the superproject to prepare a commit.</p>
</div>
<div class="paragraph">
<p><em>m</em> and <em>?</em> are applied recursively. For example if a nested submodule
in a submodule contains an untracked file, this is reported as <em>?</em> as well.</p>
</div>
<div class="paragraph">
<p>If -b is used the short-format status is preceded by a line</p>
</div>
<div class="literalblock">
<div class="content">
<pre>## branchname tracking info</pre>
</div>
</div>
</div>
<div class="sect2">
<h3 id="_porcelain_format_version_1">Porcelain Format Version 1</h3>
<div class="paragraph">
<p>Version 1 porcelain format is similar to the short format, but is guaranteed
not to change in a backwards-incompatible way between Git versions or
based on user configuration. This makes it ideal for parsing by scripts.
The description of the short format above also describes the porcelain
format, with a few exceptions:</p>
</div>
<div class="olist arabic">
<ol class="arabic">
<li>
<p>The user&#8217;s color.status configuration is not respected; color will
always be off.</p>
</li>
<li>
<p>The user&#8217;s status.relativePaths configuration is not respected; paths
shown will always be relative to the repository root.</p>
</li>
</ol>
</div>
<div class="paragraph">
<p>There is also an alternate -z format recommended for machine parsing. In
that format, the status field is the same, but some other things
change.  First, the <em>-&gt;</em> is omitted from rename entries and the field
order is reversed (e.g <em>from -&gt; to</em> becomes <em>to from</em>). Second, a NUL
(ASCII 0) follows each filename, replacing space as a field separator
and the terminating newline (but a space still separates the status
field from the first filename).  Third, filenames containing special
characters are not specially formatted; no quoting or
backslash-escaping is performed.</p>
</div>
<div class="paragraph">
<p>Any submodule changes are reported as modified <code>M</code> instead of <code>m</code> or single ?.</p>
</div>
</div>
<div class="sect2">
<h3 id="_porcelain_format_version_2">Porcelain Format Version 2</h3>
<div class="paragraph">
<p>Version 2 format adds more detailed information about the state of
the worktree and changed items.  Version 2 also defines an extensible
set of easy to parse optional headers.</p>
</div>
<div class="paragraph">
<p>Header lines start with "#" and are added in response to specific
command line arguments.  Parsers should ignore headers they
don&#8217;t recognize.</p>
</div>
<div class="sect3">
<h4 id="_branch_headers">Branch Headers</h4>
<div class="paragraph">
<p>If <code>--branch</code> is given, a series of header lines are printed with
information about the current branch.</p>
</div>
<div class="literalblock">
<div class="content">
<pre>Line                                     Notes
------------------------------------------------------------
# branch.oid &lt;commit&gt; | (initial)        Current commit.
# branch.head &lt;branch&gt; | (detached)      Current branch.
# branch.upstream &lt;upstream-branch&gt;      If upstream is set.
# branch.ab +&lt;ahead&gt; -&lt;behind&gt;           If upstream is set and
                                         the commit is present.
------------------------------------------------------------</pre>
</div>
</div>
</div>
<div class="sect3">
<h4 id="_stash_information">Stash Information</h4>
<div class="paragraph">
<p>If <code>--show-stash</code> is given, one line is printed showing the number of stash
entries if non-zero:</p>
</div>
<div class="literalblock">
<div class="content">
<pre># stash &lt;N&gt;</pre>
</div>
</div>
</div>
<div class="sect3">
<h4 id="_changed_tracked_entries">Changed Tracked Entries</h4>
<div class="paragraph">
<p>Following the headers, a series of lines are printed for tracked
entries.  One of three different line formats may be used to describe
an entry depending on the type of change.  Tracked entries are printed
in an undefined order; parsers should allow for a mixture of the 3
line types in any order.</p>
</div>
<div class="paragraph">
<p>Ordinary changed entries have the following format:</p>
</div>
<div class="literalblock">
<div class="content">
<pre>1 &lt;XY&gt; &lt;sub&gt; &lt;mH&gt; &lt;mI&gt; &lt;mW&gt; &lt;hH&gt; &lt;hI&gt; &lt;path&gt;</pre>
</div>
</div>
<div class="paragraph">
<p>Renamed or copied entries have the following format:</p>
</div>
<div class="literalblock">
<div class="content">
<pre>2 &lt;XY&gt; &lt;sub&gt; &lt;mH&gt; &lt;mI&gt; &lt;mW&gt; &lt;hH&gt; &lt;hI&gt; &lt;X&gt;&lt;score&gt; &lt;path&gt;&lt;sep&gt;&lt;origPath&gt;</pre>
</div>
</div>
<div class="literalblock">
<div class="content">
<pre>Field       Meaning
--------------------------------------------------------
&lt;XY&gt;        A 2 character field containing the staged and
            unstaged XY values described in the short format,
            with unchanged indicated by a "." rather than
            a space.
&lt;sub&gt;       A 4 character field describing the submodule state.
            "N..." when the entry is not a submodule.
            "S&lt;c&gt;&lt;m&gt;&lt;u&gt;" when the entry is a submodule.
            &lt;c&gt; is "C" if the commit changed; otherwise ".".
            &lt;m&gt; is "M" if it has tracked changes; otherwise ".".
            &lt;u&gt; is "U" if there are untracked changes; otherwise ".".
&lt;mH&gt;        The octal file mode in HEAD.
&lt;mI&gt;        The octal file mode in the index.
&lt;mW&gt;        The octal file mode in the worktree.
&lt;hH&gt;        The object name in HEAD.
&lt;hI&gt;        The object name in the index.
&lt;X&gt;&lt;score&gt;  The rename or copy score (denoting the percentage
            of similarity between the source and target of the
            move or copy). For example "R100" or "C75".
&lt;path&gt;      The pathname.  In a renamed/copied entry, this
            is the target path.
&lt;sep&gt;       When the `-z` option is used, the 2 pathnames are separated
            with a NUL (ASCII 0x00) byte; otherwise, a tab (ASCII 0x09)
            byte separates them.
&lt;origPath&gt;  The pathname in the commit at HEAD or in the index.
            This is only present in a renamed/copied entry, and
            tells where the renamed/copied contents came from.
--------------------------------------------------------</pre>
</div>
</div>
<div class="paragraph">
<p>Unmerged entries have the following format; the first character is
a "u" to distinguish from ordinary changed entries.</p>
</div>
<div class="literalblock">
<div class="content">
<pre>u &lt;XY&gt; &lt;sub&gt; &lt;m1&gt; &lt;m2&gt; &lt;m3&gt; &lt;mW&gt; &lt;h1&gt; &lt;h2&gt; &lt;h3&gt; &lt;path&gt;</pre>
</div>
</div>
<div class="literalblock">
<div class="content">
<pre>Field       Meaning
--------------------------------------------------------
&lt;XY&gt;        A 2 character field describing the conflict type
            as described in the short format.
&lt;sub&gt;       A 4 character field describing the submodule state
            as described above.
&lt;m1&gt;        The octal file mode in stage 1.
&lt;m2&gt;        The octal file mode in stage 2.
&lt;m3&gt;        The octal file mode in stage 3.
&lt;mW&gt;        The octal file mode in the worktree.
&lt;h1&gt;        The object name in stage 1.
&lt;h2&gt;        The object name in stage 2.
&lt;h3&gt;        The object name in stage 3.
&lt;path&gt;      The pathname.
--------------------------------------------------------</pre>
</div>
</div>
</div>
<div class="sect3">
<h4 id="_other_items">Other Items</h4>
<div class="paragraph">
<p>Following the tracked entries (and if requested), a series of
lines will be printed for untracked and then ignored items
found in the worktree.</p>
</div>
<div class="paragraph">
<p>Untracked items have the following format:</p>
</div>
<div class="literalblock">
<div class="content">
<pre>? &lt;path&gt;</pre>
</div>
</div>
<div class="paragraph">
<p>Ignored items have the following format:</p>
</div>
<div class="literalblock">
<div class="content">
<pre>! &lt;path&gt;</pre>
</div>
</div>
</div>
<div class="sect3">
<h4 id="_pathname_format_notes_and_z">Pathname Format Notes and -z</h4>
<div class="paragraph">
<p>When the <code>-z</code> option is given, pathnames are printed as is and
without any quoting and lines are terminated with a NUL (ASCII 0x00)
byte.</p>
</div>
<div class="paragraph">
<p>Without the <code>-z</code> option, pathnames with "unusual" characters are
quoted as explained for the configuration variable <code>core.quotePath</code>
(see <a href="git-config.html">git-config(1)</a>).</p>
</div>
</div>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_configuration">CONFIGURATION</h2>
<div class="sectionbody">
<div class="paragraph">
<p>The command honors <code>color.status</code> (or <code>status.color</code>&#8201;&#8212;&#8201;they
mean the same thing and the latter is kept for backward
compatibility) and <code>color.status.</code><em>&lt;slot&gt;</em> configuration variables
to colorize its output.</p>
</div>
<div class="paragraph">
<p>If the config variable <code>status.relativePaths</code> is set to false, then all
paths shown are relative to the repository root, not to the current
directory.</p>
</div>
<div class="paragraph">
<p>If <code>status.submoduleSummary</code> is set to a non zero number or true (identical
to -1 or an unlimited number), the submodule summary will be enabled for
the long format and a summary of commits for modified submodules will be
shown (see --summary-limit option of <a href="git-submodule.html">git-submodule(1)</a>). Please note
that the summary output from the status command will be suppressed for all
submodules when <code>diff.ignoreSubmodules</code> is set to <em>all</em> or only for those
submodules where <code>submodule.</code><em>&lt;name&gt;</em><code>.ignore=all</code>. To also view the summary for
ignored submodules you can either use the --ignore-submodules=dirty command
line option or the <em>git submodule summary</em> command, which shows a similar
output but does not honor these settings.</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_background_refresh">BACKGROUND REFRESH</h2>
<div class="sectionbody">
<div class="paragraph">
<p>By default, <code>git</code> <code>status</code> will automatically refresh the index, updating
the cached stat information from the working tree and writing out the
result. Writing out the updated index is an optimization that isn&#8217;t
strictly necessary (<code>status</code> computes the values for itself, but writing
them out is just to save subsequent programs from repeating our
computation). When <code>status</code> is run in the background, the lock held
during the write may conflict with other simultaneous processes, causing
them to fail. Scripts running <code>status</code> in the background should consider
using <code>git</code> <code>--no-optional-locks</code> <code>status</code> (see <a href="git.html">git(1)</a> for details).</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_untracked_files_and_performance">UNTRACKED FILES AND PERFORMANCE</h2>
<div class="sectionbody">
<div class="paragraph">
<p><code>git</code> <code>status</code> can be very slow in large worktrees if/when it
needs to search for untracked files and directories. There are
many configuration options available to speed this up by either
avoiding the work or making use of cached results from previous
Git commands. There is no single optimum set of settings right
for everyone. We&#8217;ll list a summary of the relevant options to help
you, but before going into the list, you may want to run <code>git</code> <code>status</code>
again, because your configuration may already be caching <code>git</code> <code>status</code>
results, so it could be faster on subsequent runs.</p>
</div>
<div class="ulist">
<ul>
<li>
<p>The <code>--untracked-files=no</code> flag or the
<code>status.showUntrackedFiles=no</code> config (see above for both):
indicate that <code>git</code> <code>status</code> should not report untracked
files. This is the fastest option. <code>git</code> <code>status</code> will not list
the untracked files, so you need to be careful to remember if
you create any new files and manually <code>git</code> <code>add</code> them.</p>
</li>
<li>
<p><code>advice.statusUoption=false</code> (see <a href="git-config.html">git-config(1)</a>):
setting this variable to <code>false</code> disables the warning message
given when enumerating untracked files takes more than 2
seconds.  In a large project, it may take longer and the user
may have already accepted the trade off (e.g. using "-uno" may
not be an acceptable option for the user), in which case, there
is no point issuing the warning message, and in such a case,
disabling the warning may be the best.</p>
</li>
<li>
<p><code>core.untrackedCache=true</code> (see <a href="git-update-index.html">git-update-index(1)</a>):
enable the untracked cache feature and only search directories
that have been modified since the previous <code>git</code> <code>status</code> command.
Git remembers the set of untracked files within each directory
and assumes that if a directory has not been modified, then
the set of untracked files within has not changed.  This is much
faster than enumerating the contents of every directory, but still
not without cost, because Git still has to search for the set of
modified directories. The untracked cache is stored in the
.<code>git/index</code> file. The reduced cost of searching for untracked
files is offset slightly by the increased size of the index and
the cost of keeping it up-to-date. That reduced search time is
usually worth the additional size.</p>
</li>
<li>
<p><code>core.untrackedCache=true</code> and <code>core.fsmonitor=true</code> or
<code>core.fsmonitor=</code><em>&lt;hook-command-pathname&gt;</em> (see
<a href="git-update-index.html">git-update-index(1)</a>): enable both the untracked cache
and FSMonitor features and only search directories that have
been modified since the previous <code>git</code> <code>status</code> command.  This
is faster than using just the untracked cache alone because
Git can also avoid searching for modified directories.  Git
only has to enumerate the exact set of directories that have
changed recently. While the FSMonitor feature can be enabled
without the untracked cache, the benefits are greatly reduced
in that case.</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>Note that after you turn on the untracked cache and/or FSMonitor
features it may take a few <code>git</code> <code>status</code> commands for the various
caches to warm up before you see improved command times.  This is
normal.</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_see_also">SEE ALSO</h2>
<div class="sectionbody">
<div class="paragraph">
<p><a href="gitignore.html">gitignore(5)</a></p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_git">GIT</h2>
<div class="sectionbody">
<div class="paragraph">
<p>Part of the <a href="git.html">git(1)</a> suite</p>
</div>
</div>
</div>
</div>
<div id="footer">
<div id="footer-text">
Last updated 2025-06-20 18:10:42 -0700
</div>
</div>
</body>
</html>