<!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>How to maintain Git</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="article">
<div id="header">
<h1>How to maintain Git</h1>
</div>
<div id="content">
<div class="sect1">
<h2 id="_activities">Activities</h2>
<div class="sectionbody">
<div class="paragraph">
<p>The maintainer&#8217;s Git time is spent on three activities.</p>
</div>
<div class="ulist">
<ul>
<li>
<p>Communication (45%)</p>
<div class="literalblock">
<div class="content">
<pre>Mailing list discussions on general design, fielding user
questions, diagnosing bug reports; reviewing, commenting on,
suggesting alternatives to, and rejecting patches.</pre>
</div>
</div>
</li>
<li>
<p>Integration (50%)</p>
<div class="literalblock">
<div class="content">
<pre>Applying new patches from the contributors while spotting and
correcting minor mistakes, shuffling the integration and
testing branches, pushing the results out, cutting the
releases, and making announcements.</pre>
</div>
</div>
</li>
<li>
<p>Own development (5%)</p>
<div class="literalblock">
<div class="content">
<pre>Scratching my own itch and sending proposed patch series out.</pre>
</div>
</div>
</li>
</ul>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_the_policy">The Policy</h2>
<div class="sectionbody">
<div class="paragraph">
<p>The policy on Integration is informally mentioned in "A Note
from the maintainer" message, which is periodically posted to
the mailing list after each feature release is made:</p>
</div>
<div class="ulist">
<ul>
<li>
<p>Feature releases are numbered as vX.Y.0 and are meant to
contain bugfixes and enhancements in any area, including
functionality, performance and usability, without regression.</p>
</li>
<li>
<p>Maintenance releases are numbered as vX.Y.Z (0 &lt; Z) and are meant
to contain only bugfixes for the corresponding vX.Y.0 feature
release and earlier maintenance releases vX.Y.W (W &lt; Z).</p>
</li>
<li>
<p>The <em>master</em> branch is used to prepare for the next feature
release. In other words, at some point, the tip of <em>master</em>
branch is tagged as vX.(Y+1).0, when vX.Y.0 is the latest
feature release.</p>
</li>
<li>
<p><em>maint</em> branch is used to prepare for the next maintenance
release.  After the feature release vX.Y.0 is made, the tip
of <em>maint</em> branch is set to that release, and bugfixes will
accumulate on the branch, and at some point, the tip of the
branch is tagged with vX.Y.1, vX.Y.2, and so on.</p>
</li>
<li>
<p><em>next</em> branch is used to publish changes (both enhancements
and fixes) that (1) have worthwhile goal, (2) are in a fairly
good shape suitable for everyday use, (3) but have not yet
demonstrated to be regression free.  Reviews from contributors on
the mailing list help to make the determination.  After a topic
is merged to <em>next</em>, it is tested for at least 7 calendar days
before getting merged to <em>master</em>.</p>
</li>
<li>
<p><em>seen</em> branch is used to publish other proposed changes that do
not yet pass the criteria set for <em>next</em> (see above), but there
is no promise that <em>seen</em> will contain everything.  A topic that
had no reviewer reaction may not be picked up.</p>
</li>
<li>
<p>A new topic will first get merged to <em>seen</em>, unless it is
trivially correct and clearly urgent, in which case it may be
directly merged to <em>next</em> or even to <em>master</em>.</p>
</li>
<li>
<p>If a topic that was picked up to <em>seen</em> becomes and stays
inactive for 3 calendar weeks without having seen a clear
consensus that it is good enough to be moved to <em>next</em>, the
topic may be discarded from <em>seen</em>.  Interested parties are
still free to revive the topic.  For the purpose of this
guideline, the definition of being "inactive" is that nobody
has discussed the topic, no new iteration of the topic was
posted, and no responses to the review comments were given.</p>
</li>
<li>
<p>The tips of <em>master</em> and <em>maint</em> branches will not be rewound to
allow people to build their own customization on top of them.
Early in a new development cycle, <em>next</em> is rewound to the tip of
<em>master</em> once, but otherwise it will not be rewound until the end
of the cycle.</p>
</li>
<li>
<p>Usually <em>master</em> contains all of <em>maint</em> and <em>next</em> contains all
of <em>master</em>.  <em>seen</em> contains all the topics merged to <em>next</em>, but
is rebuilt directly on <em>master</em>.</p>
</li>
<li>
<p>The tip of <em>master</em> is meant to be more stable than any
tagged releases, and the users are encouraged to follow it.</p>
</li>
<li>
<p>The <em>next</em> branch is where new action takes place, and the
users are encouraged to test it so that regressions and bugs
are found before new topics are merged to <em>master</em>.</p>
</li>
<li>
<p>When a problem is found in a topic in <em>next</em>, the topic is marked
not to be merged to <em>master</em>.  Follow-up patches are discussed on
the mailing list and applied to the topic after being reviewed and
then the topic is merged (again) to <em>next</em>.  After going through
the usual testing in <em>next</em>, the entire (fixed) topic is merged
to <em>master</em>.</p>
</li>
<li>
<p>One release cycle for a feature release is expected to last for
eight to ten weeks.  A few "release candidate" releases are
expected to be tagged about a week apart before the final
release, and a "preview" release is tagged about a week before
the first release candidate gets tagged.</p>
</li>
<li>
<p>After the preview release is tagged, topics that were well
reviewed may be merged to <em>master</em> before spending the usual 7
calendar days in <em>next</em>, with the expectation that any bugs in
them can be caught and fixed in the release candidates before
the final release.</p>
</li>
<li>
<p>After the first release candidate is tagged, the contributors are
strongly encouraged to focus on finding and fixing new regressions
introduced during the cycle, over addressing old bugs and any new
features.  Topics stop getting merged down from <em>next</em> to <em>master</em>,
and new topics stop getting merged to <em>next</em>. Unless they are fixes
to new regressions in the cycle, that is.</p>
</li>
<li>
<p>Soon after a feature release is made, the tip of <em>maint</em> gets
fast-forwarded to point at the release.  Topics that have been
kept in <em>next</em> are merged down to <em>master</em> and a new development
cycle starts.</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>Note that before v1.9.0 release, the version numbers used to be
structured slightly differently.  vX.Y.Z were feature releases while
vX.Y.Z.W were maintenance releases for vX.Y.Z.</p>
</div>
<div class="paragraph">
<p>Because most of the lines of code in Git are written by individual
contributors, and contributions come in the form of e-mailed patches
published on the mailing list, the project maintains a mapping from
individual commits to the Message-Id of the e-mail that resulted in
the commit, to help tracking the origin of the changes. The notes
in "refs/notes/amlog" are used for this purpose, and are published
along with the broken-out branches to the maintainer&#8217;s repository.</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_a_typical_git_day">A Typical Git Day</h2>
<div class="sectionbody">
<div class="paragraph">
<p>A typical Git day for the maintainer implements the above policy
by doing the following:</p>
</div>
<div class="ulist">
<ul>
<li>
<p>Scan mailing list.  Respond with review comments, suggestions
etc.  Kibitz.  Collect potentially usable patches from the
mailing list.  Patches about a single topic go to one mailbox (I
read my mail in Gnus, and type \C-o to save/append messages in
files in mbox format).</p>
</li>
<li>
<p>Write his own patches to address issues raised on the list but
nobody has stepped up to solve.  Send it out just like other
contributors do, and pick them up just like patches from other
contributors (see above).</p>
</li>
<li>
<p>Review the patches in the saved mailboxes.  Edit proposed log
message for typofixes and clarifications, and add Acks
collected from the list.  Edit patch to incorporate "Oops,
that should have been like this" fixes from the discussion.</p>
</li>
<li>
<p>Classify the collected patches and handle <em>master</em> and
<em>maint</em> updates:</p>
</li>
<li>
<p>Obviously correct fixes that pertain to the tip of <em>maint</em>
are directly applied to <em>maint</em>.</p>
</li>
<li>
<p>Obviously correct fixes that pertain to the tip of <em>master</em>
are directly applied to <em>master</em>.</p>
</li>
<li>
<p>Other topics are not handled in this step.</p>
<div class="literalblock">
<div class="content">
<pre>This step is done with "git am".</pre>
</div>
</div>
<div class="literalblock">
<div class="content">
<pre>$ git checkout master    ;# or "git checkout maint"
$ git am -sc3 mailbox
$ make test</pre>
</div>
</div>
<div class="literalblock">
<div class="content">
<pre>In practice, almost no patch directly goes to 'master' or
'maint'.</pre>
</div>
</div>
<div class="literalblock">
<div class="content">
<pre>Applying the e-mailed patches using "git am" automatically records
the mappings from 'Message-Id' to the applied commit in the "amlog"
notes. Periodically check that this is working with "git show -s
--notes=amlog $commit".</pre>
</div>
</div>
<div class="literalblock">
<div class="content">
<pre>This mapping is maintained with the aid of the "post-applypatch"
hook found in the 'todo' branch. That hook should be installed
before applying patches. It is also helpful to carry forward any
relevant amlog entries when rebasing, so the following config may
be useful:</pre>
</div>
</div>
<div class="literalblock">
<div class="content">
<pre>     [notes]
rewriteRef = refs/notes/amlog</pre>
</div>
</div>
<div class="literalblock">
<div class="content">
<pre>Avoid "cherry-pick", as it does not propagate notes by design. Use
either "git commit --amend" or "git rebase" to make corrections to
an existing commit, even for a single-patch topic.</pre>
</div>
</div>
<div class="literalblock">
<div class="content">
<pre>Make sure that a push refspec for 'refs/notes/amlog' is in the
remote configuration for publishing repositories. A few sample
configurations look like the following:</pre>
</div>
</div>
<div class="literalblock">
<div class="content">
<pre>     [remote "github"]
url = https://github.com/gitster/git
pushurl = github.com:gitster/git.git
mirror</pre>
</div>
</div>
<div class="literalblock">
<div class="content">
<pre>     [remote "github2"]
url = https://github.com/git/git
fetch = +refs/heads/*:refs/remotes/github2/*
pushurl = github.com:git/git.git
push = refs/heads/maint:refs/heads/maint
push = refs/heads/master:refs/heads/master
push = refs/heads/next:refs/heads/next
push = +refs/heads/seen:refs/heads/seen
push = +refs/notes/amlog</pre>
</div>
</div>
</li>
<li>
<p>Review the last issue of "What&#8217;s cooking" message, review the
topics ready for merging (topic&#8594;master and topic&#8594;maint).  Use
"Meta/cook -w" script (where Meta/ contains a checkout of the
<em>todo</em> branch) to aid this step.</p>
<div class="literalblock">
<div class="content">
<pre>And perform the merge.  Use "Meta/Reintegrate -e" script (see
later) to aid this step.</pre>
</div>
</div>
<div class="literalblock">
<div class="content">
<pre>$ Meta/cook -w last-issue-of-whats-cooking.mbox</pre>
</div>
</div>
<div class="literalblock">
<div class="content">
<pre>$ git checkout master    ;# or "git checkout maint"
$ echo ai/topic | Meta/Reintegrate -e ;# "git merge ai/topic"
$ git log -p ORIG_HEAD.. ;# final review
$ git diff ORIG_HEAD..   ;# final review
$ make test              ;# final review</pre>
</div>
</div>
<div class="literalblock">
<div class="content">
<pre>If the tip of 'master' is updated, also generate the preformatted
documentation and push the out result to git-htmldocs and
git-manpages repositories.</pre>
</div>
</div>
</li>
<li>
<p>Handle the remaining patches:</p>
</li>
<li>
<p>Anything unobvious that is applicable to <em>master</em> (in other
words, does not depend on anything that is still in <em>next</em>
and not in <em>master</em>) is applied to a new topic branch that
is forked from the tip of <em>master</em> (or the last feature release,
which is a bit older than <em>master</em>).  This includes both
enhancements and unobvious fixes to <em>master</em>.  A topic
branch is named as ai/topic where "ai" is two-letter string
named after author&#8217;s initial and "topic" is a descriptive name
of the topic (in other words, "what&#8217;s the series is about").</p>
</li>
<li>
<p>An unobvious fix meant for <em>maint</em> is applied to a new
topic branch that is forked from the tip of <em>maint</em> (or the
oldest and still relevant maintenance branch).  The
topic may be named as ai/maint-topic.</p>
</li>
<li>
<p>Changes that pertain to an existing topic are applied to
the branch, but:</p>
</li>
<li>
<p>obviously correct ones are applied first;</p>
</li>
<li>
<p>questionable ones are discarded or applied to near the tip;</p>
</li>
<li>
<p>Replacement patches to an existing topic are accepted only
for commits not in <em>next</em>.</p>
<div class="literalblock">
<div class="content">
<pre>The initial round is done with:</pre>
</div>
</div>
<div class="literalblock">
<div class="content">
<pre>$ git checkout ai/topic ;# or "git checkout -b ai/topic master"
$ git am -sc3 --whitespace=warn mailbox</pre>
</div>
</div>
<div class="literalblock">
<div class="content">
<pre>and replacing an existing topic with subsequent round is done with:</pre>
</div>
</div>
<div class="literalblock">
<div class="content">
<pre>$ git checkout master...ai/topic ;# try to reapply to the same base
$ git am -sc3 --whitespace=warn mailbox</pre>
</div>
</div>
<div class="literalblock">
<div class="content">
<pre>to prepare the new round on a detached HEAD, and then</pre>
</div>
</div>
<div class="literalblock">
<div class="content">
<pre>$ git range-diff @{-1}...
$ git diff @{-1}</pre>
</div>
</div>
<div class="literalblock">
<div class="content">
<pre>to double check what changed since the last round, and finally</pre>
</div>
</div>
<div class="literalblock">
<div class="content">
<pre>$ git checkout -B @{-1}</pre>
</div>
</div>
<div class="literalblock">
<div class="content">
<pre>to conclude (the last step is why a topic already in 'next' is
not replaced but updated incrementally).</pre>
</div>
</div>
<div class="literalblock">
<div class="content">
<pre>Whether it is the initial round or a subsequent round, the topic
may not build even in isolation, or may break the build when
merged to integration branches due to bugs.  There may already
be obvious and trivial improvements suggested on the list.  The
maintainer often adds an extra commit, with "SQUASH???" in its
title, to fix things up, before publishing the integration
branches to make it usable by other developers for testing.
These changes are what the maintainer is not 100% committed to
(trivial typofixes etc. are often squashed directly into the
patches that need fixing, without being applied as a separate
"SQUASH???" commit), so that they can be removed easily as needed.
The expectation is that the original author will make corrections
in a reroll.</pre>
</div>
</div>
</li>
<li>
<p>By now, new topic branches are created and existing topic
branches are updated.  The integration branches <em>next</em>, <em>jch</em>,
and <em>seen</em> need to be updated to contain them.</p>
</li>
<li>
<p>If there are topics that have been merged to <em>master</em> and should
be merged to <em>maint</em>, merge them to <em>maint</em>, and update the
release notes to the next maintenance release.</p>
</li>
<li>
<p>Review the latest issue of "What&#8217;s cooking" again.  Are topics
that have been sufficiently long in <em>next</em> ready to be merged to
<em>master</em>?  Are topics we saw earlier and are in <em>seen</em> now got
positive reviews and are ready to be merged to <em>next</em>?</p>
</li>
<li>
<p>If there are topics that have been cooking in <em>next</em> long enough
and should be merged to <em>master</em>, merge them to <em>master</em>, and
update the release notes to the next feature release.</p>
</li>
<li>
<p>If there were patches directly made on <em>maint</em>, merge <em>maint</em> to
<em>master</em>; make sure that the result is what you want.</p>
<div class="literalblock">
<div class="content">
<pre>$ git checkout master
$ git merge -m "Sync with 'maint'" --no-log maint
$ git log -p --first-parent ORIG_HEAD..
$ make test</pre>
</div>
</div>
</li>
<li>
<p>Prepare to update the <em>jch</em> branch, which is used to represent
somewhere between <em>master</em> and <em>seen</em> and often is slightly ahead
of <em>next</em>, and the <em>seen</em> branch, which is used to hold the rest.</p>
<div class="literalblock">
<div class="content">
<pre>$ Meta/Reintegrate master..jch &gt;Meta/redo-jch.sh</pre>
</div>
</div>
<div class="literalblock">
<div class="content">
<pre>The result is a script that lists topics to be merged in order to
rebuild the current 'jch'.  Do the same for 'seen'.</pre>
</div>
</div>
</li>
<li>
<p>Review the Meta/redo-jch.sh and Meta/redo-seen.sh scripts.  The
former should have a line <em><mark>#</mark> match next</em>---the idea is that
merging the topics listed before the line on top of <em>master</em>
should result in a tree identical to that of <em>next</em>.</p>
</li>
<li>
<p>As newly created topics are usually merged near the tip of
<em>seen</em>, add them to the end of the Meta/redo-seen.sh script.
Among the topics that were in <em>seen</em>, there may be ones that
are not quite ready for <em>next</em> but are getting there.  Move
them from Meta/redo-seen.sh to the end of Meta/redo-jch.sh.
The expectation is that you&#8217;d use <em>jch</em> as your daily driver
as the first guinea pig, so you should choose carefully.</p>
</li>
<li>
<p>Now we are ready to start rebuilding <em>jch</em> and merging topics to
<em>next</em>.  For each branch whose tip is not merged to <em>next</em>, one
of three things can happen:</p>
</li>
<li>
<p>The commits are all next-worthy; merge the topic to next;</p>
</li>
<li>
<p>The new parts are of mixed quality, but earlier ones are
next-worthy; merge the early parts to next;</p>
</li>
<li>
<p>Nothing is next-worthy; do not do anything.</p>
<div class="literalblock">
<div class="content">
<pre>This step is aided with Meta/redo-jch.sh script created earlier.
If a topic that was already in 'next' gained a patch, the script
would list it as "ai/topic~1".  To include the new patch to the
updated 'next', drop the "~1" part; to keep it excluded, do not
touch the line.</pre>
</div>
</div>
<div class="literalblock">
<div class="content">
<pre>If a topic that was not in 'next' should be merged to 'next', add
it before the '### match next' line.  Then:</pre>
</div>
</div>
<div class="literalblock">
<div class="content">
<pre>$ git checkout --detach master
$ sh Meta/redo-jch.sh -c1</pre>
</div>
</div>
<div class="literalblock">
<div class="content">
<pre>to rebuild the 'jch' branch from scratch.  "-c1" tells the script
to stop merging at the first line that begins with '###'
(i.e. the "### match next" line you added earlier).</pre>
</div>
</div>
<div class="literalblock">
<div class="content">
<pre>At this point, build-test the result.  It may reveal semantic
conflicts (e.g. a topic renamed a variable, another added a new
reference to the variable under its old name), in which case
prepare an appropriate merge-fix first (see appendix), and
rebuild the 'jch' branch from scratch, starting at the tip of
'master', this time without using "-c1" to merge all topics.</pre>
</div>
</div>
<div class="literalblock">
<div class="content">
<pre>Then do the same to 'next'.</pre>
</div>
</div>
<div class="literalblock">
<div class="content">
<pre>$ git checkout next
$ sh Meta/redo-jch.sh -c1 -e</pre>
</div>
</div>
<div class="literalblock">
<div class="content">
<pre>The "-e" option allows the merge message that comes from the
history of the topic and the comments in the "What's cooking" to
be edited.  The resulting tree should match 'jch^{/^### match next'}'
as the same set of topics are merged on 'master'; otherwise there
is a mismerge. Investigate why and do not proceed until the mismerge
is found and rectified.</pre>
</div>
</div>
<div class="literalblock">
<div class="content">
<pre>If 'master' was updated before you started redoing 'next', then</pre>
</div>
</div>
<div class="literalblock">
<div class="content">
<pre>$ git diff 'jch^{/^### match next}' next</pre>
</div>
</div>
<div class="literalblock">
<div class="content">
<pre>would show differences that went into 'master' (which 'jch' has,
but 'next' does not yet---often it is updates to the release
notes).  Merge 'master' back to 'next' if that is the case.</pre>
</div>
</div>
<div class="literalblock">
<div class="content">
<pre>$ git merge -m "Sync with 'master'" --no-log master</pre>
</div>
</div>
<div class="literalblock">
<div class="content">
<pre>When all is well, clean up the redo-jch.sh script with</pre>
</div>
</div>
<div class="literalblock">
<div class="content">
<pre>$ sh Meta/redo-jch.sh -u</pre>
</div>
</div>
<div class="literalblock">
<div class="content">
<pre>This removes topics listed in the script that have already been
merged to 'master'.  This may lose '### match next' marker;
add it again to the appropriate place when it happens.</pre>
</div>
</div>
</li>
<li>
<p>Rebuild <em>seen</em> on top of <em>jch</em>.</p>
<div class="literalblock">
<div class="content">
<pre>$ git checkout -B seen jch
$ sh Meta/redo-seen.sh</pre>
</div>
</div>
<div class="literalblock">
<div class="content">
<pre>When all is well, clean up the redo-seen.sh script with</pre>
</div>
</div>
<div class="literalblock">
<div class="content">
<pre>$ sh Meta/redo-seen.sh -u</pre>
</div>
</div>
<div class="literalblock">
<div class="content">
<pre>Double check by running</pre>
</div>
</div>
<div class="literalblock">
<div class="content">
<pre>$ git branch --no-merged seen '??/*'</pre>
</div>
</div>
<div class="literalblock">
<div class="content">
<pre>to see there is no unexpected leftover topics.</pre>
</div>
</div>
<div class="literalblock">
<div class="content">
<pre>At this point, build-test the result for semantic conflicts, and
if there are, prepare an appropriate merge-fix first (see
appendix), and rebuild the 'seen' branch from scratch, starting at
the tip of 'jch'.</pre>
</div>
</div>
</li>
<li>
<p>Update "What&#8217;s cooking" message to review the updates to
existing topics, newly added topics and graduated topics.</p>
<div class="literalblock">
<div class="content">
<pre>This step is helped with Meta/cook script.</pre>
</div>
</div>
<div class="literalblock">
<div class="content">
<pre>$ Meta/cook</pre>
</div>
</div>
<div class="literalblock">
<div class="content">
<pre>This script inspects the history between master..seen, finds tips
of topic branches, compares what it found with the current
contents in Meta/whats-cooking.txt, and updates that file.
Topics not listed in the file but are found in master..seen are
added to the "New topics" section, topics listed in the file that
are no longer found in master..seen are moved to the "Graduated to
master" section, and topics whose commits changed their states
(e.g. used to be only in 'seen', now merged to 'next') are updated
with change markers "&lt;&lt;" and "&gt;&gt;".</pre>
</div>
</div>
<div class="literalblock">
<div class="content">
<pre>Look for lines enclosed in "&lt;&lt;" and "&gt;&gt;"; they hold contents from
old file that are replaced by this integration round.  After
verifying them, remove the old part.  Review the description for
each topic and update its doneness and plan as needed.  To review
the updated plan, run</pre>
</div>
</div>
<div class="literalblock">
<div class="content">
<pre>$ Meta/cook -w</pre>
</div>
</div>
<div class="literalblock">
<div class="content">
<pre>which will pick up comments given to the topics, such as "Will
merge to 'next'", etc. (see Meta/cook script to learn what kind
of phrases are supported).</pre>
</div>
</div>
</li>
<li>
<p>Compile, test and install all four (five) integration branches;
Meta/Dothem script may aid this step.</p>
</li>
<li>
<p>Format documentation if the <em>master</em> branch was updated;
Meta/dodoc.sh script may aid this step.</p>
</li>
<li>
<p>Push the integration branches out to public places; Meta/pushall
script may aid this step.</p>
</li>
</ul>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_observations">Observations</h2>
<div class="sectionbody">
<div class="paragraph">
<p>Some observations to be made.</p>
</div>
<div class="ulist">
<ul>
<li>
<p>Each topic is tested individually, and also together with other
topics cooking first in <em>seen</em>, then in <em>jch</em> and then in <em>next</em>.
Until it matures, no part of it is merged to <em>master</em>.</p>
</li>
<li>
<p>A topic already in <em>next</em> can get fixes while still in
<em>next</em>.  Such a topic will have many merges to <em>next</em> (in
other words, "git log --first-parent next" will show many
"Merge branch <em>ai/topic</em> to next" for the same topic.</p>
</li>
<li>
<p>An unobvious fix for <em>maint</em> is cooked in <em>next</em> and then
merged to <em>master</em> to make extra sure it is Ok and then
merged to <em>maint</em>.</p>
</li>
<li>
<p>Even when <em>next</em> becomes empty (in other words, all topics
prove stable and are merged to <em>master</em> and "git diff master
next" shows empty), it has tons of merge commits that will
never be in <em>master</em>.</p>
</li>
<li>
<p>In principle, "git log --first-parent master..next" should
show nothing but merges (in practice, there are fixup commits
and reverts that are not merges).</p>
</li>
<li>
<p>Commits near the tip of a topic branch that are not in <em>next</em>
are fair game to be discarded, replaced or rewritten.
Commits already merged to <em>next</em> will not be.</p>
</li>
<li>
<p>Being in the <em>next</em> branch is not a guarantee for a topic to
be included in the next feature release.  Being in the
<em>master</em> branch typically is.</p>
</li>
<li>
<p>Due to the nature of "SQUASH???" fix-ups, if the original author
agrees with the suggested changes, it is OK to squash them to
appropriate patches in the next round (when the suggested change
is small enough, the author should not even bother with
"Helped-by").  It is also OK to drop them from the next round
when the original author does not agree with the suggestion, but
the author is expected to say why somewhere in the discussion.</p>
</li>
</ul>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_appendix">Appendix</h2>
<div class="sectionbody">
<div class="sect2">
<h3 id="_preparing_a_merge_fix">Preparing a "merge-fix"</h3>
<div class="paragraph">
<p>A merge of two topics may not textually conflict but still have
conflict at the semantic level. A classic example is for one topic
to rename a variable and all its uses, while another topic adds a
new use of the variable under its old name. When these two topics
are merged together, the reference to the variable newly added by
the latter topic will still use the old name in the result.</p>
</div>
<div class="paragraph">
<p>The Meta/Reintegrate script that is used by redo-jch and redo-seen
scripts implements a crude but usable way to work around this issue.
When the script merges branch $X, it checks if "refs/merge-fix/$X"
exists, and if so, the effect of it is squashed into the result of
the mechanical merge.  In other words,</p>
</div>
<div class="literalblock">
<div class="content">
<pre>$ echo $X | Meta/Reintegrate</pre>
</div>
</div>
<div class="paragraph">
<p>is roughly equivalent to this sequence:</p>
</div>
<div class="literalblock">
<div class="content">
<pre>$ git merge --rerere-autoupdate $X
$ git commit
$ git cherry-pick -n refs/merge-fix/$X
$ git commit --amend</pre>
</div>
</div>
<div class="paragraph">
<p>The goal of this "prepare a merge-fix" step is to come up with a
commit that can be squashed into a result of mechanical merge to
correct semantic conflicts.</p>
</div>
<div class="paragraph">
<p>After finding that the result of merging branch "ai/topic" to an
integration branch had such a semantic conflict, say seen~4, check the
problematic merge out on a detached HEAD, edit the working tree to
fix the semantic conflict, and make a separate commit to record the
fix-up:</p>
</div>
<div class="literalblock">
<div class="content">
<pre>$ git checkout seen~4
$ git show -s --pretty=%s ;# double check
Merge branch 'ai/topic' to seen
$ edit
$ git commit -m 'merge-fix/ai/topic' -a</pre>
</div>
</div>
<div class="paragraph">
<p>Then make a reference "refs/merge-fix/ai/topic" to point at this
result:</p>
</div>
<div class="literalblock">
<div class="content">
<pre>$ git update-ref refs/merge-fix/ai/topic HEAD</pre>
</div>
</div>
<div class="paragraph">
<p>Then double check the result by asking Meta/Reintegrate to redo the
merge:</p>
</div>
<div class="literalblock">
<div class="content">
<pre>$ git checkout seen~5 ;# the parent of the problem merge
$ echo ai/topic | Meta/Reintegrate
$ git diff seen~4</pre>
</div>
</div>
<div class="paragraph">
<p>This time, because you prepared refs/merge-fix/ai/topic, the
resulting merge should have been tweaked to include the fix for the
semantic conflict.</p>
</div>
<div class="paragraph">
<p>Note that this assumes that the order in which conflicting branches
are merged does not change.  If the reason why merging ai/topic
branch needs this merge-fix is because another branch merged earlier
to the integration branch changed the underlying assumption ai/topic
branch made (e.g. ai/topic branch added a site to refer to a
variable, while the other branch renamed that variable and adjusted
existing use sites), and if you changed redo-jch (or redo-seen) script
to merge ai/topic branch before the other branch, then the above
merge-fix should not be applied while merging ai/topic, but should
instead be applied while merging the other branch.  You would need
to move the fix to apply to the other branch, perhaps like this:</p>
</div>
<div class="literalblock">
<div class="content">
<pre>$ mf=refs/merge-fix
$ git update-ref $mf/$the_other_branch $mf/ai/topic
$ git update-ref -d $mf/ai/topic</pre>
</div>
</div>
</div>
</div>
</div>
</div>
<div id="footer">
<div id="footer-text">
Last updated 2025-11-06 07:08:56 -0800
</div>
</div>
</body>
</html>
