<!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-merge(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-merge(1) Manual Page</h1>
<h2 id="_name">NAME</h2>
<div class="sectionbody">
<p>git-merge - Join two or more development histories together</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 merge</em> [-n] [--stat] [--no-commit] [--squash] [--[no-]edit]
        [--no-verify] [-s &lt;strategy&gt;] [-X &lt;strategy-option&gt;] [-S[&lt;keyid&gt;]]
        [--[no-]allow-unrelated-histories]
        [--[no-]rerere-autoupdate] [-m &lt;msg&gt;] [-F &lt;file&gt;]
        [--into-name &lt;branch&gt;] [&lt;commit&gt;&#8230;&#8203;]
<em>git merge</em> (--continue | --abort | --quit)</pre>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_description">DESCRIPTION</h2>
<div class="sectionbody">
<div class="paragraph">
<p>Incorporates changes from the named commits (since the time their
histories diverged from the current branch) into the current
branch.  This command is used by <code>git</code> <code>pull</code> to incorporate changes
from another repository and can be used by hand to merge changes
from one branch into another.</p>
</div>
<div class="paragraph">
<p>Assume the following history exists and the current branch is
<code>master</code>:</p>
</div>
<div class="listingblock">
<div class="content">
<pre>          A---B---C topic
         /
    D---E---F---G master</pre>
</div>
</div>
<div class="paragraph">
<p>Then <code>git</code> <code>merge</code> <code>topic</code> will replay the changes made on the
<code>topic</code> branch since it diverged from <code>master</code> (i.e., <code>E</code>) until
its current commit (<code>C</code>) on top of <code>master</code>, and record the result
in a new commit along with the names of the two parent commits and
a log message from the user describing the changes. Before the operation,
<code>ORIG_HEAD</code> is set to the tip of the current branch (<code>C</code>).</p>
</div>
<div class="listingblock">
<div class="content">
<pre>          A---B---C topic
         /         \
    D---E---F---G---H master</pre>
</div>
</div>
<div class="paragraph">
<p>A merge stops if there&#8217;s a conflict that cannot be resolved
automatically or if <code>--no-commit</code> was provided when initiating the
merge. At that point you can run <code>git</code> <code>merge</code> <code>--abort</code> or <code>git</code> <code>merge</code>
<code>--continue</code>.</p>
</div>
<div class="paragraph">
<p><code>git</code> <code>merge</code> <code>--abort</code> will abort the merge process and try to reconstruct
the pre-merge state. However, if there were uncommitted changes when the
merge started (and especially if those changes were further modified
after the merge was started), <code>git</code> <code>merge</code> <code>--abort</code> will in some cases be
unable to reconstruct the original (pre-merge) changes. Therefore:</p>
</div>
<div class="paragraph">
<p><strong>Warning</strong>: Running <code>git</code> <code>merge</code> with non-trivial uncommitted changes is
discouraged: while possible, it may leave you in a state that is hard to
back out of in the case of a conflict.</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_options">OPTIONS</h2>
<div class="sectionbody">
<div class="dlist">
<dl>
<dt class="hdlist1">--commit</dt>
<dt class="hdlist1">--no-commit</dt>
<dd>
<p>Perform the merge and commit the result. This option can
be used to override --no-commit.</p>
<div class="paragraph">
<p>With --no-commit perform the merge and stop just before creating
a merge commit, to give the user a chance to inspect and further
tweak the merge result before committing.</p>
</div>
<div class="paragraph">
<p>Note that fast-forward updates do not create a merge commit and
therefore there is no way to stop those merges with --no-commit.
Thus, if you want to ensure your branch is not changed or updated
by the merge command, use --no-ff with --no-commit.</p>
</div>
</dd>
<dt class="hdlist1">--edit</dt>
<dt class="hdlist1">-e</dt>
<dt class="hdlist1">--no-edit</dt>
<dd>
<p>	Invoke an editor before committing successful mechanical merge to
	further edit the auto-generated merge message, so that the user
	can explain and justify the merge. The <code>--no-edit</code> option can be
	used to accept the auto-generated message (this is generally
	discouraged).
The <code>--edit</code> (or <code>-e</code>) option is still useful if you are
giving a draft message with the <code>-m</code> option from the command line
and want to edit it in the editor.</p>
<div class="paragraph">
<p>Older scripts may depend on the historical behaviour of not allowing the
user to edit the merge log message. They will see an editor opened when
they run <code>git</code> <code>merge</code>. To make it easier to adjust such scripts to the
updated behaviour, the environment variable <code>GIT_MERGE_AUTOEDIT</code> can be
set to <code>no</code> at the beginning of them.</p>
</div>
</dd>
<dt class="hdlist1">--cleanup=&lt;mode&gt;</dt>
<dd>
<p>This option determines how the merge message will be cleaned up before
committing. See <a href="git-commit.html">git-commit(1)</a> for more details. In addition, if
the <em>&lt;mode&gt;</em> is given a value of <code>scissors</code>, scissors will be appended
to <code>MERGE_MSG</code> before being passed on to the commit machinery in the
case of a merge conflict.</p>
</dd>
<dt class="hdlist1">--ff</dt>
<dt class="hdlist1">--no-ff</dt>
<dt class="hdlist1">--ff-only</dt>
<dd>
<p>Specifies how a merge is handled when the merged-in history is
already a descendant of the current history.  <code>--ff</code> is the
default unless merging an annotated (and possibly signed) tag
that is not stored in its natural place in the <code>refs/tags/</code>
hierarchy, in which case <code>--no-ff</code> is assumed.</p>
<div class="paragraph">
<p>With <code>--ff</code>, when possible resolve the merge as a fast-forward (only
update the branch pointer to match the merged branch; do not create a
merge commit).  When not possible (when the merged-in history is not a
descendant of the current history), create a merge commit.</p>
</div>
<div class="paragraph">
<p>With <code>--no-ff</code>, create a merge commit in all cases, even when the merge
could instead be resolved as a fast-forward.</p>
</div>
<div class="paragraph">
<p>With <code>--ff-only</code>, resolve the merge as a fast-forward when possible.
When not possible, refuse to merge and exit with a non-zero status.</p>
</div>
</dd>
<dt class="hdlist1">-S[&lt;keyid&gt;]</dt>
<dt class="hdlist1">--gpg-sign[=&lt;keyid&gt;]</dt>
<dt class="hdlist1">--no-gpg-sign</dt>
<dd>
<p>GPG-sign the resulting merge commit. The <code>keyid</code> argument is
optional and defaults to the committer identity; if specified,
it must be stuck to the option without a space. <code>--no-gpg-sign</code>
is useful to countermand both <code>commit.gpgSign</code> configuration variable,
and earlier <code>--gpg-sign</code>.</p>
</dd>
<dt class="hdlist1">--log[=&lt;n&gt;]</dt>
<dt class="hdlist1">--no-log</dt>
<dd>
<p>In addition to branch names, populate the log message with
one-line descriptions from at most &lt;n&gt; actual commits that are being
merged. See also <a href="git-fmt-merge-msg.html">git-fmt-merge-msg(1)</a>.</p>
<div class="paragraph">
<p>With --no-log do not list one-line descriptions from the
actual commits being merged.</p>
</div>
</dd>
<dt class="hdlist1"><code>--signoff</code></dt>
<dt class="hdlist1"><code>--no-signoff</code></dt>
<dd>
<p>Add a <code>Signed-off-by</code> trailer by the committer at the end of the commit
log message.  The meaning of a signoff depends on the project
to which you&#8217;re committing.  For example, it may certify that
the committer has the rights to submit the work under the
project&#8217;s license or agrees to some contributor representation,
such as a Developer Certificate of Origin.
(See <a href="https://developercertificate.org" class="bare">https://developercertificate.org</a> for the one used by the
Linux kernel and Git projects.)  Consult the documentation or
leadership of the project to which you&#8217;re contributing to
understand how the signoffs are used in that project.</p>
<div class="paragraph">
<p>The <code>--no-signoff</code> option can be used to countermand an earlier <code>--signoff</code>
option on the command line.</p>
</div>
</dd>
<dt class="hdlist1">--stat</dt>
<dt class="hdlist1">-n</dt>
<dt class="hdlist1">--no-stat</dt>
<dd>
<p>Show a diffstat at the end of the merge. The diffstat is also
controlled by the configuration option merge.stat.</p>
<div class="paragraph">
<p>With -n or --no-stat do not show a diffstat at the end of the
merge.</p>
</div>
</dd>
<dt class="hdlist1">--squash</dt>
<dt class="hdlist1">--no-squash</dt>
<dd>
<p>Produce the working tree and index state as if a real merge
happened (except for the merge information), but do not actually
make a commit, move the <code>HEAD</code>, or record <code>$GIT_DIR/MERGE_HEAD</code>
(to cause the next <code>git</code> <code>commit</code> command to create a merge
commit).  This allows you to create a single commit on top of
the current branch whose effect is the same as merging another
branch (or more in case of an octopus).</p>
<div class="paragraph">
<p>With --no-squash perform the merge and commit the result. This
option can be used to override --squash.</p>
</div>
<div class="paragraph">
<p>With --squash, --commit is not allowed, and will fail.</p>
</div>
</dd>
<dt class="hdlist1">--[no-]verify</dt>
<dd>
<p>By default, the pre-merge and commit-msg hooks are run.
When <code>--no-verify</code> is given, these are bypassed.
See also <a href="githooks.html">githooks(5)</a>.</p>
</dd>
<dt class="hdlist1">-s &lt;strategy&gt;</dt>
<dt class="hdlist1">--strategy=&lt;strategy&gt;</dt>
<dd>
<p>Use the given merge strategy; can be supplied more than
once to specify them in the order they should be tried.
If there is no <code>-s</code> option, a built-in list of strategies
is used instead (<code>ort</code> when merging a single head,
<code>octopus</code> otherwise).</p>
</dd>
<dt class="hdlist1">-X &lt;option&gt;</dt>
<dt class="hdlist1">--strategy-option=&lt;option&gt;</dt>
<dd>
<p>Pass merge strategy specific option through to the merge
strategy.</p>
</dd>
<dt class="hdlist1">--verify-signatures</dt>
<dt class="hdlist1">--no-verify-signatures</dt>
<dd>
<p>Verify that the tip commit of the side branch being merged is
signed with a valid key, i.e. a key that has a valid uid: in the
default trust model, this means the signing key has been signed by
a trusted key.  If the tip commit of the side branch is not signed
with a valid key, the merge is aborted.</p>
</dd>
<dt class="hdlist1">--summary</dt>
<dt class="hdlist1">--no-summary</dt>
<dd>
<p>Synonyms to --stat and --no-stat; these are deprecated and will be
removed in the future.</p>
</dd>
<dt class="hdlist1">-q</dt>
<dt class="hdlist1">--quiet</dt>
<dd>
<p>Operate quietly. Implies --no-progress.</p>
</dd>
<dt class="hdlist1">-v</dt>
<dt class="hdlist1">--verbose</dt>
<dd>
<p>Be verbose.</p>
</dd>
<dt class="hdlist1">--progress</dt>
<dt class="hdlist1">--no-progress</dt>
<dd>
<p>Turn progress on/off explicitly. If neither is specified,
progress is shown if standard error is connected to a terminal.
Note that not all merge strategies may support progress
reporting.</p>
</dd>
<dt class="hdlist1">--autostash</dt>
<dt class="hdlist1">--no-autostash</dt>
<dd>
<p>Automatically create a temporary stash entry before the operation
begins, record it in the ref <code>MERGE_AUTOSTASH</code>
and apply it after the operation ends.  This means
that you can run the operation on a dirty worktree.  However, use
with care: the final stash application after a successful
merge might result in non-trivial conflicts.</p>
</dd>
<dt class="hdlist1">--allow-unrelated-histories</dt>
<dd>
<p>By default, <code>git</code> <code>merge</code> command refuses to merge histories
that do not share a common ancestor.  This option can be
used to override this safety when merging histories of two
projects that started their lives independently. As that is
a very rare occasion, no configuration variable to enable
this by default exists and will not be added.</p>
</dd>
<dt class="hdlist1">-m &lt;msg&gt;</dt>
<dd>
<p>Set the commit message to be used for the merge commit (in
case one is created).</p>
<div class="paragraph">
<p>If <code>--log</code> is specified, a shortlog of the commits being merged
will be appended to the specified message.</p>
</div>
<div class="paragraph">
<p>The <code>git</code> <code>fmt-merge-msg</code> command can be
used to give a good default for automated <code>git</code> <code>merge</code>
invocations. The automated message can include the branch description.</p>
</div>
</dd>
<dt class="hdlist1">--into-name &lt;branch&gt;</dt>
<dd>
<p>Prepare the default merge message as if merging to the branch
<em>&lt;branch&gt;</em>, instead of the name of the real branch to which
the merge is made.</p>
</dd>
<dt class="hdlist1">-F &lt;file&gt;</dt>
<dt class="hdlist1">--file=&lt;file&gt;</dt>
<dd>
<p>Read the commit message to be used for the merge commit (in
case one is created).</p>
<div class="paragraph">
<p>If <code>--log</code> is specified, a shortlog of the commits being merged
will be appended to the specified message.</p>
</div>
</dd>
<dt class="hdlist1">--rerere-autoupdate</dt>
<dt class="hdlist1">--no-rerere-autoupdate</dt>
<dd>
<p>After the rerere mechanism reuses a recorded resolution on
the current conflict to update the files in the working
tree, allow it to also update the index with the result of
resolution.  <code>--no-rerere-autoupdate</code> is a good way to
double-check what <code>rerere</code> did and catch potential
mismerges, before committing the result to the index with a
separate <code>git</code> <code>add</code>.</p>
</dd>
<dt class="hdlist1">--overwrite-ignore</dt>
<dt class="hdlist1">--no-overwrite-ignore</dt>
<dd>
<p>Silently overwrite ignored files from the merge result. This
is the default behavior. Use <code>--no-overwrite-ignore</code> to abort.</p>
</dd>
<dt class="hdlist1">--abort</dt>
<dd>
<p>Abort the current conflict resolution process, and
try to reconstruct the pre-merge state. If an autostash entry is
present, apply it to the worktree.</p>
<div class="paragraph">
<p>If there were uncommitted worktree changes present when the merge
started, <code>git</code> <code>merge</code> <code>--abort</code> will in some cases be unable to
reconstruct these changes. It is therefore recommended to always
commit or stash your changes before running <code>git</code> <code>merge</code>.</p>
</div>
<div class="paragraph">
<p><code>git</code> <code>merge</code> <code>--abort</code> is equivalent to <code>git</code> <code>reset</code> <code>--merge</code> when
<code>MERGE_HEAD</code> is present unless <code>MERGE_AUTOSTASH</code> is also present in
which case <code>git</code> <code>merge</code> <code>--abort</code> applies the stash entry to the worktree
whereas <code>git</code> <code>reset</code> <code>--merge</code> will save the stashed changes in the stash
list.</p>
</div>
</dd>
<dt class="hdlist1">--quit</dt>
<dd>
<p>Forget about the current merge in progress. Leave the index
and the working tree as-is. If <code>MERGE_AUTOSTASH</code> is present, the
stash entry will be saved to the stash list.</p>
</dd>
<dt class="hdlist1">--continue</dt>
<dd>
<p>After a <code>git</code> <code>merge</code> stops due to conflicts you can conclude the
merge by running <code>git</code> <code>merge</code> <code>--continue</code> (see "HOW TO RESOLVE
CONFLICTS" section below).</p>
</dd>
<dt class="hdlist1">&lt;commit&gt;&#8230;&#8203;</dt>
<dd>
<p>Commits, usually other branch heads, to merge into our branch.
Specifying more than one commit will create a merge with
more than two parents (affectionately called an Octopus merge).</p>
<div class="paragraph">
<p>If no commit is given from the command line, merge the remote-tracking
branches that the current branch is configured to use as its upstream.
See also the configuration section of this manual page.</p>
</div>
<div class="paragraph">
<p>When <code>FETCH_HEAD</code> (and no other commit) is specified, the branches
recorded in the .<code>git/FETCH_HEAD</code> file by the previous invocation
of <code>git</code> <code>fetch</code> for merging are merged to the current branch.</p>
</div>
</dd>
</dl>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_pre_merge_checks">PRE-MERGE CHECKS</h2>
<div class="sectionbody">
<div class="paragraph">
<p>Before applying outside changes, you should get your own work in
good shape and committed locally, so it will not be clobbered if
there are conflicts.  See also <a href="git-stash.html">git-stash(1)</a>.
<code>git</code> <code>pull</code> and <code>git</code> <code>merge</code> will stop without doing anything when
local uncommitted changes overlap with files that <code>git</code> <code>pull</code>/<code>git</code>
<code>merge</code> may need to update.</p>
</div>
<div class="paragraph">
<p>To avoid recording unrelated changes in the merge commit,
<code>git</code> <code>pull</code> and <code>git</code> <code>merge</code> will also abort if there are any changes
registered in the index relative to the <code>HEAD</code> commit.  (Special
narrow exceptions to this rule may exist depending on which merge
strategy is in use, but generally, the index must match HEAD.)</p>
</div>
<div class="paragraph">
<p>If all named commits are already ancestors of <code>HEAD</code>, <code>git</code> <code>merge</code>
will exit early with the message "Already up to date."</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_fast_forward_merge">FAST-FORWARD MERGE</h2>
<div class="sectionbody">
<div class="paragraph">
<p>Often the current branch head is an ancestor of the named commit.
This is the most common case especially when invoked from <code>git</code>
<code>pull</code>: you are tracking an upstream repository, you have committed
no local changes, and now you want to update to a newer upstream
revision.  In this case, a new commit is not needed to store the
combined history; instead, the <code>HEAD</code> (along with the index) is
updated to point at the named commit, without creating an extra
merge commit.</p>
</div>
<div class="paragraph">
<p>This behavior can be suppressed with the <code>--no-ff</code> option.</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_true_merge">TRUE MERGE</h2>
<div class="sectionbody">
<div class="paragraph">
<p>Except in a fast-forward merge (see above), the branches to be
merged must be tied together by a merge commit that has both of them
as its parents.</p>
</div>
<div class="paragraph">
<p>A merged version reconciling the changes from all branches to be
merged is committed, and your <code>HEAD</code>, index, and working tree are
updated to it.  It is possible to have modifications in the working
tree as long as they do not overlap; the update will preserve them.</p>
</div>
<div class="paragraph">
<p>When it is not obvious how to reconcile the changes, the following
happens:</p>
</div>
<div class="olist arabic">
<ol class="arabic">
<li>
<p>The <code>HEAD</code> pointer stays the same.</p>
</li>
<li>
<p>The <code>MERGE_HEAD</code> ref is set to point to the other branch head.</p>
</li>
<li>
<p>Paths that merged cleanly are updated both in the index file and
in your working tree.</p>
</li>
<li>
<p>For conflicting paths, the index file records up to three
versions: stage 1 stores the version from the common ancestor,
stage 2 from <code>HEAD</code>, and stage 3 from <code>MERGE_HEAD</code> (you
can inspect the stages with <code>git</code> <code>ls-files</code> <code>-u</code>).  The working
tree files contain the result of the merge operation; i.e. 3-way
merge results with familiar conflict markers &lt;&lt;&lt; <code>===</code> &gt;&gt;&gt;.</p>
</li>
<li>
<p>A ref named <code>AUTO_MERGE</code> is written, pointing to a tree
corresponding to the current content of the working tree (including
conflict markers for textual conflicts).  Note that this ref is only
written when the <em>ort</em> merge strategy is used (the default).</p>
</li>
<li>
<p>No other changes are made.  In particular, the local
modifications you had before you started merge will stay the
same and the index entries for them stay as they were,
i.e. matching <code>HEAD</code>.</p>
</li>
</ol>
</div>
<div class="paragraph">
<p>If you tried a merge which resulted in complex conflicts and
want to start over, you can recover with <code>git</code> <code>merge</code> <code>--abort</code>.</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_merging_tag">MERGING TAG</h2>
<div class="sectionbody">
<div class="paragraph">
<p>When merging an annotated (and possibly signed) tag, Git always
creates a merge commit even if a fast-forward merge is possible, and
the commit message template is prepared with the tag message.
Additionally, if the tag is signed, the signature check is reported
as a comment in the message template. See also <a href="git-tag.html">git-tag(1)</a>.</p>
</div>
<div class="paragraph">
<p>When you want to just integrate with the work leading to the commit
that happens to be tagged, e.g. synchronizing with an upstream
release point, you may not want to make an unnecessary merge commit.</p>
</div>
<div class="paragraph">
<p>In such a case, you can "unwrap" the tag yourself before feeding it
to <code>git</code> <code>merge</code>, or pass <code>--ff-only</code> when you do not have any work on
your own. e.g.</p>
</div>
<div class="listingblock">
<div class="content">
<pre>git fetch origin
git merge v1.2.3^0
git merge --ff-only v1.2.3</pre>
</div>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_how_conflicts_are_presented">HOW CONFLICTS ARE PRESENTED</h2>
<div class="sectionbody">
<div class="paragraph">
<p>During a merge, the working tree files are updated to reflect the result
of the merge.  Among the changes made to the common ancestor&#8217;s version,
non-overlapping ones (that is, you changed an area of the file while the
other side left that area intact, or vice versa) are incorporated in the
final result verbatim.  When both sides made changes to the same area,
however, Git cannot randomly pick one side over the other, and asks you to
resolve it by leaving what both sides did to that area.</p>
</div>
<div class="paragraph">
<p>By default, Git uses the same style as the one used by the "merge" program
from the RCS suite to present such a conflicted hunk, like this:</p>
</div>
<div class="listingblock">
<div class="content">
<pre>Here are lines that are either unchanged from the common
ancestor, or cleanly resolved because only one side changed,
or cleanly resolved because both sides changed the same way.
&lt;&lt;&lt;&lt;&lt;&lt;&lt; yours:sample.txt
Conflict resolution is hard;
let's go shopping.
=======
Git makes conflict resolution easy.
&gt;&gt;&gt;&gt;&gt;&gt;&gt; theirs:sample.txt
And here is another line that is cleanly resolved or unmodified.</pre>
</div>
</div>
<div class="paragraph">
<p>The area where a pair of conflicting changes happened is marked with markers
&lt;&lt;&lt;&lt;&lt;&lt;&lt;, <code>=======</code>, and &gt;&gt;&gt;&gt;&gt;&gt;&gt;.  The part before the <code>=======</code>
is typically your side, and the part afterwards is typically their side.</p>
</div>
<div class="paragraph">
<p>The default format does not show what the original said in the conflicting
area.  You cannot tell how many lines are deleted and replaced with
Barbie&#8217;s remark on your side.  The only thing you can tell is that your
side wants to say it is hard and you&#8217;d prefer to go shopping, while the
other side wants to claim it is easy.</p>
</div>
<div class="paragraph">
<p>An alternative style can be used by setting the <code>merge.conflictStyle</code>
configuration variable to either "diff3" or "zdiff3".  In "diff3"
style, the above conflict may look like this:</p>
</div>
<div class="listingblock">
<div class="content">
<pre>Here are lines that are either unchanged from the common
ancestor, or cleanly resolved because only one side changed,
&lt;&lt;&lt;&lt;&lt;&lt;&lt; yours:sample.txt
or cleanly resolved because both sides changed the same way.
Conflict resolution is hard;
let's go shopping.
||||||| base:sample.txt
or cleanly resolved because both sides changed identically.
Conflict resolution is hard.
=======
or cleanly resolved because both sides changed the same way.
Git makes conflict resolution easy.
&gt;&gt;&gt;&gt;&gt;&gt;&gt; theirs:sample.txt
And here is another line that is cleanly resolved or unmodified.</pre>
</div>
</div>
<div class="paragraph">
<p>while in "zdiff3" style, it may look like this:</p>
</div>
<div class="listingblock">
<div class="content">
<pre>Here are lines that are either unchanged from the common
ancestor, or cleanly resolved because only one side changed,
or cleanly resolved because both sides changed the same way.
&lt;&lt;&lt;&lt;&lt;&lt;&lt; yours:sample.txt
Conflict resolution is hard;
let's go shopping.
||||||| base:sample.txt
or cleanly resolved because both sides changed identically.
Conflict resolution is hard.
=======
Git makes conflict resolution easy.
&gt;&gt;&gt;&gt;&gt;&gt;&gt; theirs:sample.txt
And here is another line that is cleanly resolved or unmodified.</pre>
</div>
</div>
<div class="paragraph">
<p>In addition to the &lt;&lt;&lt;&lt;&lt;&lt;&lt;, <code>=======</code>, and &gt;&gt;&gt;&gt;&gt;&gt;&gt; markers, it uses
another ||||||| marker that is followed by the original text.  You can
tell that the original just stated a fact, and your side simply gave in to
that statement and gave up, while the other side tried to have a more
positive attitude.  You can sometimes come up with a better resolution by
viewing the original.</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_how_to_resolve_conflicts">HOW TO RESOLVE CONFLICTS</h2>
<div class="sectionbody">
<div class="paragraph">
<p>After seeing a conflict, you can do two things:</p>
</div>
<div class="ulist">
<ul>
<li>
<p>Decide not to merge.  The only clean-ups you need are to reset
the index file to the <code>HEAD</code> commit to reverse 2. and to clean
up working tree changes made by 2. and 3.; <code>git</code> <code>merge</code> <code>--abort</code>
can be used for this.</p>
</li>
<li>
<p>Resolve the conflicts.  Git will mark the conflicts in
the working tree.  Edit the files into shape and
<code>git</code> <code>add</code> them to the index.  Use <code>git</code> <code>commit</code> or
<code>git</code> <code>merge</code> <code>--continue</code> to seal the deal. The latter command
checks whether there is a (interrupted) merge in progress
before calling <code>git</code> <code>commit</code>.</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>You can work through the conflict with a number of tools:</p>
</div>
<div class="ulist">
<ul>
<li>
<p>Use a mergetool.  <code>git</code> <code>mergetool</code> to launch a graphical
mergetool which will work through the merge with you.</p>
</li>
<li>
<p>Look at the diffs.  <code>git</code> <code>diff</code> will show a three-way diff,
highlighting changes from both the <code>HEAD</code> and <code>MERGE_HEAD</code>
versions. <code>git</code> <code>diff</code> <code>AUTO_MERGE</code> will show what changes you&#8217;ve
made so far to resolve textual conflicts.</p>
</li>
<li>
<p>Look at the diffs from each branch. <code>git</code> <code>log</code> <code>--merge</code> <code>-p</code> <em>&lt;path&gt;</em>
will show diffs first for the <code>HEAD</code> version and then the
<code>MERGE_HEAD</code> version.</p>
</li>
<li>
<p>Look at the originals.  <code>git</code> <code>show</code> <code>:1:filename</code> shows the
common ancestor, <code>git</code> <code>show</code> <code>:2:filename</code> shows the <code>HEAD</code>
version, and <code>git</code> <code>show</code> <code>:3:filename</code> shows the <code>MERGE_HEAD</code>
version.</p>
</li>
</ul>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_examples">EXAMPLES</h2>
<div class="sectionbody">
<div class="ulist">
<ul>
<li>
<p>Merge branches <code>fixes</code> and <code>enhancements</code> on top of
the current branch, making an octopus merge:</p>
<div class="listingblock">
<div class="content">
<pre>$ git merge fixes enhancements</pre>
</div>
</div>
</li>
<li>
<p>Merge branch <code>obsolete</code> into the current branch, using <code>ours</code>
merge strategy:</p>
<div class="listingblock">
<div class="content">
<pre>$ git merge -s ours obsolete</pre>
</div>
</div>
</li>
<li>
<p>Merge branch <code>maint</code> into the current branch, but do not make
a new commit automatically:</p>
<div class="listingblock">
<div class="content">
<pre>$ git merge --no-commit maint</pre>
</div>
</div>
<div class="paragraph">
<p>This can be used when you want to include further changes to the
merge, or want to write your own merge commit message.</p>
</div>
<div class="paragraph">
<p>You should refrain from abusing this option to sneak substantial
changes into a merge commit.  Small fixups like bumping
release/version name would be acceptable.</p>
</div>
</li>
</ul>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_merge_strategies">MERGE STRATEGIES</h2>
<div class="sectionbody">
<div class="paragraph">
<p>The merge mechanism (<code>git</code> <code>merge</code> and <code>git</code> <code>pull</code> commands) allows the
backend <em>merge strategies</em> to be chosen with <code>-s</code> option.  Some strategies
can also take their own options, which can be passed by giving <code>-X</code><em>&lt;option&gt;</em>
arguments to <code>git</code> <code>merge</code> and/or <code>git</code> <code>pull</code>.</p>
</div>
<div class="dlist">
<dl>
<dt class="hdlist1">ort</dt>
<dd>
<p>This is the default merge strategy when pulling or merging one
branch.  This strategy can only resolve two heads using a
3-way merge algorithm.  When there is more than one common
ancestor that can be used for 3-way merge, it creates a merged
tree of the common ancestors and uses that as the reference
tree for the 3-way merge.  This has been reported to result in
fewer merge conflicts without causing mismerges by tests done
on actual merge commits taken from Linux 2.6 kernel
development history.  Additionally this strategy can detect
and handle merges involving renames.  It does not make use of
detected copies.  The name for this algorithm is an acronym
("Ostensibly Recursive&#8217;s Twin") and came from the fact that it
was written as a replacement for the previous default
algorithm, <code>recursive</code>.</p>
<div class="paragraph">
<p>In the case where the path is a submodule, if the submodule commit used on
one side of the merge is a descendant of the submodule commit used on the
other side of the merge, Git attempts to fast-forward to the
descendant. Otherwise, Git will treat this case as a conflict, suggesting
as a resolution a submodule commit that is descendant of the conflicting
ones, if one exists.</p>
</div>
<div class="paragraph">
<p>The <em>ort</em> strategy can take the following options:</p>
</div>
<div class="dlist">
<dl>
<dt class="hdlist1">ours</dt>
<dd>
<p>This option forces conflicting hunks to be auto-resolved cleanly by
favoring <em>our</em> version.  Changes from the other tree that do not
conflict with our side are reflected in the merge result.
For a binary file, the entire contents are taken from our side.</p>
<div class="paragraph">
<p>This should not be confused with the <em>ours</em> merge strategy, which does not
even look at what the other tree contains at all.  It discards everything
the other tree did, declaring <em>our</em> history contains all that happened in it.</p>
</div>
</dd>
<dt class="hdlist1">theirs</dt>
<dd>
<p>This is the opposite of <em>ours</em>; note that, unlike <em>ours</em>, there is
no <em>theirs</em> merge strategy to confuse this merge option with.</p>
</dd>
<dt class="hdlist1">ignore-space-change</dt>
<dt class="hdlist1">ignore-all-space</dt>
<dt class="hdlist1">ignore-space-at-eol</dt>
<dt class="hdlist1">ignore-cr-at-eol</dt>
<dd>
<p>Treats lines with the indicated type of whitespace change as
unchanged for the sake of a three-way merge.  Whitespace
changes mixed with other changes to a line are not ignored.
See also <a href="git-diff.html">git-diff(1)</a> <code>-b</code>, <code>-w</code>,
<code>--ignore-space-at-eol</code>, and <code>--ignore-cr-at-eol</code>.</p>
<div class="ulist">
<ul>
<li>
<p>If <em>their</em> version only introduces whitespace changes to a line,
<em>our</em> version is used;</p>
</li>
<li>
<p>If <em>our</em> version introduces whitespace changes but <em>their</em>
version includes a substantial change, <em>their</em> version is used;</p>
</li>
<li>
<p>Otherwise, the merge proceeds in the usual way.</p>
</li>
</ul>
</div>
</dd>
<dt class="hdlist1">renormalize</dt>
<dd>
<p>This runs a virtual check-out and check-in of all three stages
of any file which needs a three-way merge.  This option is
meant to be used when merging branches with different clean
filters or end-of-line normalization rules.  See "Merging
branches with differing checkin/checkout attributes" in
<a href="gitattributes.html">gitattributes(5)</a> for details.</p>
</dd>
<dt class="hdlist1">no-renormalize</dt>
<dd>
<p>Disables the <code>renormalize</code> option.  This overrides the
<code>merge.renormalize</code> configuration variable.</p>
</dd>
<dt class="hdlist1">find-renames[=&lt;n&gt;]</dt>
<dd>
<p>Turn on rename detection, optionally setting the similarity
threshold.  This is the default. This overrides the
<em>merge.renames</em> configuration variable.
See also <a href="git-diff.html">git-diff(1)</a> <code>--find-renames</code>.</p>
</dd>
<dt class="hdlist1">rename-threshold=&lt;n&gt;</dt>
<dd>
<p>Deprecated synonym for <code>find-renames=</code><em>&lt;n&gt;</em>.</p>
</dd>
<dt class="hdlist1">no-renames</dt>
<dd>
<p>Turn off rename detection. This overrides the <code>merge.renames</code>
configuration variable.
See also <a href="git-diff.html">git-diff(1)</a> <code>--no-renames</code>.</p>
</dd>
<dt class="hdlist1">subtree[=&lt;path&gt;]</dt>
<dd>
<p>This option is a more advanced form of <em>subtree</em> strategy, where
the strategy makes a guess on how two trees must be shifted to
match with each other when merging.  Instead, the specified path
is prefixed (or stripped from the beginning) to make the shape of
two trees to match.</p>
</dd>
</dl>
</div>
</dd>
<dt class="hdlist1">recursive</dt>
<dd>
<p>This can only resolve two heads using a 3-way merge
algorithm.  When there is more than one common
ancestor that can be used for 3-way merge, it creates a
merged tree of the common ancestors and uses that as
the reference tree for the 3-way merge.  This has been
reported to result in fewer merge conflicts without
causing mismerges by tests done on actual merge commits
taken from Linux 2.6 kernel development history.
Additionally this can detect and handle merges involving
renames.  It does not make use of detected copies.  This was
the default strategy for resolving two heads from Git v0.99.9k
until v2.33.0.</p>
<div class="paragraph">
<p>For a path that is a submodule, the same caution as <em>ort</em> applies to this
strategy.</p>
</div>
<div class="paragraph">
<p>The <em>recursive</em> strategy takes the same options as <em>ort</em>.  However,
there are two additional options that <em>ort</em> ignores (not documented
above) that are potentially useful with the <em>recursive</em> strategy:</p>
</div>
<div class="dlist">
<dl>
<dt class="hdlist1">patience</dt>
<dd>
<p>Deprecated synonym for <code>diff-algorithm=patience</code>.</p>
</dd>
<dt class="hdlist1">diff-algorithm=[patience|minimal|histogram|myers]</dt>
<dd>
<p>Use a different diff algorithm while merging, which can help
avoid mismerges that occur due to unimportant matching lines
(such as braces from distinct functions).  See also
<a href="git-diff.html">git-diff(1)</a> <code>--diff-algorithm</code>.  Note that <code>ort</code>
specifically uses <code>diff-algorithm=histogram</code>, while <code>recursive</code>
defaults to the <code>diff.algorithm</code> config setting.</p>
</dd>
</dl>
</div>
</dd>
<dt class="hdlist1">resolve</dt>
<dd>
<p>This can only resolve two heads (i.e. the current branch
and another branch you pulled from) using a 3-way merge
algorithm.  It tries to carefully detect criss-cross
merge ambiguities.  It does not handle renames.</p>
</dd>
<dt class="hdlist1">octopus</dt>
<dd>
<p>This resolves cases with more than two heads, but refuses to do
a complex merge that needs manual resolution.  It is
primarily meant to be used for bundling topic branch
heads together.  This is the default merge strategy when
pulling or merging more than one branch.</p>
</dd>
<dt class="hdlist1">ours</dt>
<dd>
<p>This resolves any number of heads, but the resulting tree of the
merge is always that of the current branch head, effectively
ignoring all changes from all other branches.  It is meant to
be used to supersede old development history of side
branches.  Note that this is different from the -Xours option to
the <em>recursive</em> merge strategy.</p>
</dd>
<dt class="hdlist1">subtree</dt>
<dd>
<p>This is a modified <code>ort</code> strategy. When merging trees A and
B, if B corresponds to a subtree of A, B is first adjusted to
match the tree structure of A, instead of reading the trees at
the same level. This adjustment is also done to the common
ancestor tree.</p>
</dd>
</dl>
</div>
<div class="paragraph">
<p>With the strategies that use 3-way merge (including the default, <em>ort</em>),
if a change is made on both branches, but later reverted on one of the
branches, that change will be present in the merged result; some people find
this behavior confusing.  It occurs because only the heads and the merge base
are considered when performing a merge, not the individual commits.  The merge
algorithm therefore considers the reverted change as no change at all, and
substitutes the changed version instead.</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_configuration">CONFIGURATION</h2>
<div class="sectionbody">
<div class="dlist">
<dl>
<dt class="hdlist1">branch.&lt;name&gt;.mergeOptions</dt>
<dd>
<p>Sets default options for merging into branch &lt;name&gt;. The syntax and
supported options are the same as those of <code>git</code> <code>merge</code>, but option
values containing whitespace characters are currently not supported.</p>
</dd>
</dl>
</div>
<div class="paragraph">
<p>Everything above this line in this section isn&#8217;t included from the
<a href="git-config.html">git-config(1)</a> documentation. The content that follows is the
same as what&#8217;s found there:</p>
</div>
<div class="dlist">
<dl>
<dt class="hdlist1">merge.conflictStyle</dt>
<dd>
<p>Specify the style in which conflicted hunks are written out to
working tree files upon merge.  The default is "merge", which
shows a &lt;&lt;&lt;&lt;&lt;&lt;&lt; conflict marker, changes made by one side,
a <code>=======</code> marker, changes made by the other side, and then
a &gt;&gt;&gt;&gt;&gt;&gt;&gt; marker.  An alternate style, "diff3", adds a |||||||
marker and the original text before the <code>=======</code> marker.  The
"merge" style tends to produce smaller conflict regions than diff3,
both because of the exclusion of the original text, and because
when a subset of lines match on the two sides, they are just pulled
out of the conflict region.  Another alternate style, "zdiff3", is
similar to diff3 but removes matching lines on the two sides from
the conflict region when those matching lines appear near either
the beginning or end of a conflict region.</p>
</dd>
<dt class="hdlist1">merge.defaultToUpstream</dt>
<dd>
<p>If merge is called without any commit argument, merge the upstream
branches configured for the current branch by using their last
observed values stored in their remote-tracking branches.
The values of the <code>branch.</code>&lt;current <code>branch</code>&gt;<code>.merge</code> that name the
branches at the remote named by <code>branch.</code>&lt;current <code>branch</code>&gt;<code>.remote</code>
are consulted, and then they are mapped via <code>remote.</code><em>&lt;remote&gt;</em><code>.fetch</code>
to their corresponding remote-tracking branches, and the tips of
these tracking branches are merged. Defaults to true.</p>
</dd>
<dt class="hdlist1">merge.ff</dt>
<dd>
<p>By default, Git does not create an extra merge commit when merging
a commit that is a descendant of the current commit. Instead, the
tip of the current branch is fast-forwarded. When set to <code>false</code>,
this variable tells Git to create an extra merge commit in such
a case (equivalent to giving the <code>--no-ff</code> option from the command
line). When set to <code>only</code>, only such fast-forward merges are
allowed (equivalent to giving the <code>--ff-only</code> option from the
command line).</p>
</dd>
<dt class="hdlist1">merge.verifySignatures</dt>
<dd>
<p>If true, this is equivalent to the --verify-signatures command
line option. See <a href="git-merge.html">git-merge(1)</a> for details.</p>
</dd>
<dt class="hdlist1">merge.branchdesc</dt>
<dd>
<p>In addition to branch names, populate the log message with
the branch description text associated with them.  Defaults
to false.</p>
</dd>
<dt class="hdlist1">merge.log</dt>
<dd>
<p>In addition to branch names, populate the log message with at
most the specified number of one-line descriptions from the
actual commits that are being merged.  Defaults to false, and
true is a synonym for 20.</p>
</dd>
<dt class="hdlist1">merge.suppressDest</dt>
<dd>
<p>By adding a glob that matches the names of integration
branches to this multi-valued configuration variable, the
default merge message computed for merges into these
integration branches will omit "into &lt;branch name&gt;" from
its title.</p>
<div class="paragraph">
<p>An element with an empty value can be used to clear the list
of globs accumulated from previous configuration entries.
When there is no <code>merge.suppressDest</code> variable defined, the
default value of <code>master</code> is used for backward compatibility.</p>
</div>
</dd>
<dt class="hdlist1">merge.renameLimit</dt>
<dd>
<p>The number of files to consider in the exhaustive portion of
rename detection during a merge.  If not specified, defaults
to the value of diff.renameLimit.  If neither
merge.renameLimit nor diff.renameLimit are specified,
currently defaults to 7000.  This setting has no effect if
rename detection is turned off.</p>
</dd>
<dt class="hdlist1">merge.renames</dt>
<dd>
<p>Whether Git detects renames.  If set to "false", rename detection
is disabled. If set to "true", basic rename detection is enabled.
Defaults to the value of diff.renames.</p>
</dd>
<dt class="hdlist1">merge.directoryRenames</dt>
<dd>
<p>Whether Git detects directory renames, affecting what happens at
merge time to new files added to a directory on one side of
history when that directory was renamed on the other side of
history.  If merge.directoryRenames is set to "false", directory
rename detection is disabled, meaning that such new files will be
left behind in the old directory.  If set to "true", directory
rename detection is enabled, meaning that such new files will be
moved into the new directory.  If set to "conflict", a conflict
will be reported for such paths.  If merge.renames is false,
merge.directoryRenames is ignored and treated as false.  Defaults
to "conflict".</p>
</dd>
<dt class="hdlist1">merge.renormalize</dt>
<dd>
<p>Tell Git that canonical representation of files in the
repository has changed over time (e.g. earlier commits record
text files with CRLF line endings, but recent ones use LF line
endings).  In such a repository, for each file where a
three-way content merge is needed, Git can convert the data
recorded in commits to a canonical form before performing a
merge to reduce unnecessary conflicts.  For more information,
see section "Merging branches with differing checkin/checkout
attributes" in <a href="gitattributes.html">gitattributes(5)</a>.</p>
</dd>
<dt class="hdlist1">merge.stat</dt>
<dd>
<p>Whether to print the diffstat between ORIG_HEAD and the merge result
at the end of the merge.  True by default.</p>
</dd>
<dt class="hdlist1">merge.autoStash</dt>
<dd>
<p>When set to true, automatically create a temporary stash entry
before the operation begins, and apply it after the operation
ends.  This means that you can run merge on a dirty worktree.
However, use with care: the final stash application after a
successful merge might result in non-trivial conflicts.
This option can be overridden by the <code>--no-autostash</code> and
<code>--autostash</code> options of <a href="git-merge.html">git-merge(1)</a>.
Defaults to false.</p>
</dd>
<dt class="hdlist1">merge.tool</dt>
<dd>
<p>Controls which merge tool is used by <a href="git-mergetool.html">git-mergetool(1)</a>.
The list below shows the valid built-in values.
Any other value is treated as a custom merge tool and requires
that a corresponding mergetool.&lt;tool&gt;.cmd variable is defined.</p>
</dd>
<dt class="hdlist1">merge.guitool</dt>
<dd>
<p>Controls which merge tool is used by <a href="git-mergetool.html">git-mergetool(1)</a> when the
-g/--gui flag is specified. The list below shows the valid built-in values.
Any other value is treated as a custom merge tool and requires that a
corresponding mergetool.&lt;guitool&gt;.cmd variable is defined.</p>
<div class="dlist">
<dl>
<dt class="hdlist1"><code>araxis</code></dt>
<dd>
<p>Use Araxis Merge (requires a graphical session)</p>
</dd>
<dt class="hdlist1"><code>bc</code></dt>
<dd>
<p>Use Beyond Compare (requires a graphical session)</p>
</dd>
<dt class="hdlist1"><code>bc3</code></dt>
<dd>
<p>Use Beyond Compare (requires a graphical session)</p>
</dd>
<dt class="hdlist1"><code>bc4</code></dt>
<dd>
<p>Use Beyond Compare (requires a graphical session)</p>
</dd>
<dt class="hdlist1"><code>codecompare</code></dt>
<dd>
<p>Use Code Compare (requires a graphical session)</p>
</dd>
<dt class="hdlist1"><code>deltawalker</code></dt>
<dd>
<p>Use DeltaWalker (requires a graphical session)</p>
</dd>
<dt class="hdlist1"><code>diffmerge</code></dt>
<dd>
<p>Use DiffMerge (requires a graphical session)</p>
</dd>
<dt class="hdlist1"><code>diffuse</code></dt>
<dd>
<p>Use Diffuse (requires a graphical session)</p>
</dd>
<dt class="hdlist1"><code>ecmerge</code></dt>
<dd>
<p>Use ECMerge (requires a graphical session)</p>
</dd>
<dt class="hdlist1"><code>emerge</code></dt>
<dd>
<p>Use Emacs' Emerge</p>
</dd>
<dt class="hdlist1"><code>examdiff</code></dt>
<dd>
<p>Use ExamDiff Pro (requires a graphical session)</p>
</dd>
<dt class="hdlist1"><code>guiffy</code></dt>
<dd>
<p>Use Guiffy&#8217;s Diff Tool (requires a graphical session)</p>
</dd>
<dt class="hdlist1"><code>gvimdiff</code></dt>
<dd>
<p>Use gVim (requires a graphical session) with a custom layout (see <code>git</code> <code>help</code> <code>mergetool</code>'s <code>BACKEND</code> <code>SPECIFIC</code> <code>HINTS</code> section)</p>
</dd>
<dt class="hdlist1"><code>gvimdiff1</code></dt>
<dd>
<p>Use gVim (requires a graphical session) with a 2 panes layout (LOCAL and REMOTE)</p>
</dd>
<dt class="hdlist1"><code>gvimdiff2</code></dt>
<dd>
<p>Use gVim (requires a graphical session) with a 3 panes layout (LOCAL, MERGED and REMOTE)</p>
</dd>
<dt class="hdlist1"><code>gvimdiff3</code></dt>
<dd>
<p>Use gVim (requires a graphical session) where only the MERGED file is shown</p>
</dd>
<dt class="hdlist1"><code>kdiff3</code></dt>
<dd>
<p>Use KDiff3 (requires a graphical session)</p>
</dd>
<dt class="hdlist1"><code>meld</code></dt>
<dd>
<p>Use Meld (requires a graphical session) with optional <code>auto</code> <code>merge</code> (see <code>git</code> <code>help</code> <code>mergetool</code>'s <code>CONFIGURATION</code> section)</p>
</dd>
<dt class="hdlist1"><code>nvimdiff</code></dt>
<dd>
<p>Use Neovim with a custom layout (see <code>git</code> <code>help</code> <code>mergetool</code>'s <code>BACKEND</code> <code>SPECIFIC</code> <code>HINTS</code> section)</p>
</dd>
<dt class="hdlist1"><code>nvimdiff1</code></dt>
<dd>
<p>Use Neovim with a 2 panes layout (LOCAL and REMOTE)</p>
</dd>
<dt class="hdlist1"><code>nvimdiff2</code></dt>
<dd>
<p>Use Neovim with a 3 panes layout (LOCAL, MERGED and REMOTE)</p>
</dd>
<dt class="hdlist1"><code>nvimdiff3</code></dt>
<dd>
<p>Use Neovim where only the MERGED file is shown</p>
</dd>
<dt class="hdlist1"><code>opendiff</code></dt>
<dd>
<p>Use FileMerge (requires a graphical session)</p>
</dd>
<dt class="hdlist1"><code>p4merge</code></dt>
<dd>
<p>Use HelixCore P4Merge (requires a graphical session)</p>
</dd>
<dt class="hdlist1"><code>smerge</code></dt>
<dd>
<p>Use Sublime Merge (requires a graphical session)</p>
</dd>
<dt class="hdlist1"><code>tkdiff</code></dt>
<dd>
<p>Use TkDiff (requires a graphical session)</p>
</dd>
<dt class="hdlist1"><code>tortoisemerge</code></dt>
<dd>
<p>Use TortoiseMerge (requires a graphical session)</p>
</dd>
<dt class="hdlist1"><code>vimdiff</code></dt>
<dd>
<p>Use Vim with a custom layout (see <code>git</code> <code>help</code> <code>mergetool</code>'s <code>BACKEND</code> <code>SPECIFIC</code> <code>HINTS</code> section)</p>
</dd>
<dt class="hdlist1"><code>vimdiff1</code></dt>
<dd>
<p>Use Vim with a 2 panes layout (LOCAL and REMOTE)</p>
</dd>
<dt class="hdlist1"><code>vimdiff2</code></dt>
<dd>
<p>Use Vim with a 3 panes layout (LOCAL, MERGED and REMOTE)</p>
</dd>
<dt class="hdlist1"><code>vimdiff3</code></dt>
<dd>
<p>Use Vim where only the MERGED file is shown</p>
</dd>
<dt class="hdlist1"><code>vscode</code></dt>
<dd>
<p>Use Visual Studio Code (requires a graphical session)</p>
</dd>
<dt class="hdlist1"><code>winmerge</code></dt>
<dd>
<p>Use WinMerge (requires a graphical session)</p>
</dd>
<dt class="hdlist1"><code>xxdiff</code></dt>
<dd>
<p>Use xxdiff (requires a graphical session)</p>
</dd>
</dl>
</div>
</dd>
<dt class="hdlist1">merge.verbosity</dt>
<dd>
<p>Controls the amount of output shown by the recursive merge
strategy.  Level 0 outputs nothing except a final error
message if conflicts were detected. Level 1 outputs only
conflicts, 2 outputs conflicts and file changes.  Level 5 and
above outputs debugging information.  The default is level 2.
Can be overridden by the <code>GIT_MERGE_VERBOSITY</code> environment variable.</p>
</dd>
<dt class="hdlist1">merge.&lt;driver&gt;.name</dt>
<dd>
<p>Defines a human-readable name for a custom low-level
merge driver.  See <a href="gitattributes.html">gitattributes(5)</a> for details.</p>
</dd>
<dt class="hdlist1">merge.&lt;driver&gt;.driver</dt>
<dd>
<p>Defines the command that implements a custom low-level
merge driver.  See <a href="gitattributes.html">gitattributes(5)</a> for details.</p>
</dd>
<dt class="hdlist1">merge.&lt;driver&gt;.recursive</dt>
<dd>
<p>Names a low-level merge driver to be used when
performing an internal merge between common ancestors.
See <a href="gitattributes.html">gitattributes(5)</a> for details.</p>
</dd>
</dl>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_see_also">SEE ALSO</h2>
<div class="sectionbody">
<div class="paragraph">
<p><a href="git-fmt-merge-msg.html">git-fmt-merge-msg(1)</a>, <a href="git-pull.html">git-pull(1)</a>,
<a href="gitattributes.html">gitattributes(5)</a>,
<a href="git-reset.html">git-reset(1)</a>,
<a href="git-diff.html">git-diff(1)</a>, <a href="git-ls-files.html">git-ls-files(1)</a>,
<a href="git-add.html">git-add(1)</a>, <a href="git-rm.html">git-rm(1)</a>,
<a href="git-mergetool.html">git-mergetool(1)</a></p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_git">GIT</h2>
<div class="sectionbody">
<div class="paragraph">
<p>Part of the <a href="git.html">git(1)</a> suite</p>
</div>
</div>
</div>
</div>
<div id="footer">
<div id="footer-text">
Last updated 2025-02-15 14:38:14 +0900
</div>
</div>
</body>
</html>