Autogenerated HTML docs for v2.47.0-318-g04eaf
[git-htmldocs.git] / git-switch.html
blobe29995a6983e8c6d22dafd1f15b836c64d7932c8
1 <!DOCTYPE html>
2 <html xmlns="http://www.w3.org/1999/xhtml" lang="en">
3 <head>
4 <meta charset="UTF-8"/>
5 <meta http-equiv="X-UA-Compatible" content="IE=edge"/>
6 <meta name="viewport" content="width=device-width, initial-scale=1.0"/>
7 <meta name="generator" content="Asciidoctor 2.0.20"/>
8 <title>git-switch(1)</title>
9 <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"/>
10 <style>
11 /*! Asciidoctor default stylesheet | MIT License | https://asciidoctor.org */
12 /* Uncomment the following line when using as a custom stylesheet */
13 /* @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"; */
14 html{font-family:sans-serif;-webkit-text-size-adjust:100%}
15 a{background:none}
16 a:focus{outline:thin dotted}
17 a:active,a:hover{outline:0}
18 h1{font-size:2em;margin:.67em 0}
19 b,strong{font-weight:bold}
20 abbr{font-size:.9em}
21 abbr[title]{cursor:help;border-bottom:1px dotted #dddddf;text-decoration:none}
22 dfn{font-style:italic}
23 hr{height:0}
24 mark{background:#ff0;color:#000}
25 code,kbd,pre,samp{font-family:monospace;font-size:1em}
26 pre{white-space:pre-wrap}
27 q{quotes:"\201C" "\201D" "\2018" "\2019"}
28 small{font-size:80%}
29 sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}
30 sup{top:-.5em}
31 sub{bottom:-.25em}
32 img{border:0}
33 svg:not(:root){overflow:hidden}
34 figure{margin:0}
35 audio,video{display:inline-block}
36 audio:not([controls]){display:none;height:0}
37 fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}
38 legend{border:0;padding:0}
39 button,input,select,textarea{font-family:inherit;font-size:100%;margin:0}
40 button,input{line-height:normal}
41 button,select{text-transform:none}
42 button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}
43 button[disabled],html input[disabled]{cursor:default}
44 input[type=checkbox],input[type=radio]{padding:0}
45 button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}
46 textarea{overflow:auto;vertical-align:top}
47 table{border-collapse:collapse;border-spacing:0}
48 *,::before,::after{box-sizing:border-box}
49 html,body{font-size:100%}
50 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}
51 a:hover{cursor:pointer}
52 img,object,embed{max-width:100%;height:auto}
53 object,embed{height:100%}
54 img{-ms-interpolation-mode:bicubic}
55 .left{float:left!important}
56 .right{float:right!important}
57 .text-left{text-align:left!important}
58 .text-right{text-align:right!important}
59 .text-center{text-align:center!important}
60 .text-justify{text-align:justify!important}
61 .hide{display:none}
62 img,object,svg{display:inline-block;vertical-align:middle}
63 textarea{height:auto;min-height:50px}
64 select{width:100%}
65 .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}
66 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}
67 a{color:#2156a5;text-decoration:underline;line-height:inherit}
68 a:hover,a:focus{color:#1d4b8f}
69 a img{border:0}
70 p{line-height:1.6;margin-bottom:1.25em;text-rendering:optimizeLegibility}
71 p aside{font-size:.875em;line-height:1.35;font-style:italic}
72 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}
73 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}
74 h1{font-size:2.125em}
75 h2{font-size:1.6875em}
76 h3,#toctitle,.sidebarblock>.content>.title{font-size:1.375em}
77 h4,h5{font-size:1.125em}
78 h6{font-size:1em}
79 hr{border:solid #dddddf;border-width:1px 0 0;clear:both;margin:1.25em 0 1.1875em}
80 em,i{font-style:italic;line-height:inherit}
81 strong,b{font-weight:bold;line-height:inherit}
82 small{font-size:60%;line-height:inherit}
83 code{font-family:"Droid Sans Mono","DejaVu Sans Mono",monospace;font-weight:400;color:rgba(0,0,0,.9)}
84 ul,ol,dl{line-height:1.6;margin-bottom:1.25em;list-style-position:outside;font-family:inherit}
85 ul,ol{margin-left:1.5em}
86 ul li ul,ul li ol{margin-left:1.25em;margin-bottom:0}
87 ul.circle{list-style-type:circle}
88 ul.disc{list-style-type:disc}
89 ul.square{list-style-type:square}
90 ul.circle ul:not([class]),ul.disc ul:not([class]),ul.square ul:not([class]){list-style:inherit}
91 ol li ul,ol li ol{margin-left:1.25em;margin-bottom:0}
92 dl dt{margin-bottom:.3125em;font-weight:bold}
93 dl dd{margin-bottom:1.25em}
94 blockquote{margin:0 0 1.25em;padding:.5625em 1.25em 0 1.1875em;border-left:1px solid #ddd}
95 blockquote,blockquote p{line-height:1.6;color:rgba(0,0,0,.85)}
96 @media screen and (min-width:768px){h1,h2,h3,#toctitle,.sidebarblock>.content>.title,h4,h5,h6{line-height:1.2}
97 h1{font-size:2.75em}
98 h2{font-size:2.3125em}
99 h3,#toctitle,.sidebarblock>.content>.title{font-size:1.6875em}
100 h4{font-size:1.4375em}}
101 table{background:#fff;margin-bottom:1.25em;border:1px solid #dedede;word-wrap:normal}
102 table thead,table tfoot{background:#f7f8f7}
103 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}
104 table tr th,table tr td{padding:.5625em .625em;font-size:inherit;color:rgba(0,0,0,.8)}
105 table tr.even,table tr.alt{background:#f8f8f7}
106 table thead tr th,table tfoot tr th,table tbody tr td,table tr td,table tfoot tr td{line-height:1.6}
107 h1,h2,h3,#toctitle,.sidebarblock>.content>.title,h4,h5,h6{line-height:1.2;word-spacing:-.05em}
108 h1 strong,h2 strong,h3 strong,#toctitle strong,.sidebarblock>.content>.title strong,h4 strong,h5 strong,h6 strong{font-weight:400}
109 .center{margin-left:auto;margin-right:auto}
110 .stretch{width:100%}
111 .clearfix::before,.clearfix::after,.float-group::before,.float-group::after{content:" ";display:table}
112 .clearfix::after,.float-group::after{clear:both}
113 :not(pre).nobreak{word-wrap:normal}
114 :not(pre).nowrap{white-space:nowrap}
115 :not(pre).pre-wrap{white-space:pre-wrap}
116 :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}
117 pre{color:rgba(0,0,0,.9);font-family:"Droid Sans Mono","DejaVu Sans Mono",monospace;line-height:1.45;text-rendering:optimizeSpeed}
118 pre code,pre pre{color:inherit;font-size:inherit;line-height:inherit}
119 pre>code{display:block}
120 pre.nowrap,pre.nowrap pre{white-space:pre;word-wrap:normal}
121 em em{font-style:normal}
122 strong strong{font-weight:400}
123 .keyseq{color:rgba(51,51,51,.8)}
124 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}
125 .keyseq kbd:first-child{margin-left:0}
126 .keyseq kbd:last-child{margin-right:0}
127 .menuseq,.menuref{color:#000}
128 .menuseq b:not(.caret),.menuref{font-weight:inherit}
129 .menuseq{word-spacing:-.02em}
130 .menuseq b.caret{font-size:1.25em;line-height:.8}
131 .menuseq i.caret{font-weight:bold;text-align:center;width:.45em}
132 b.button::before,b.button::after{position:relative;top:-1px;font-weight:400}
133 b.button::before{content:"[";padding:0 3px 0 2px}
134 b.button::after{content:"]";padding:0 2px 0 3px}
135 p a>code:hover{color:rgba(0,0,0,.9)}
136 #header,#content,#footnotes,#footer{width:100%;margin:0 auto;max-width:62.5em;*zoom:1;position:relative;padding-left:.9375em;padding-right:.9375em}
137 #header::before,#header::after,#content::before,#content::after,#footnotes::before,#footnotes::after,#footer::before,#footer::after{content:" ";display:table}
138 #header::after,#content::after,#footnotes::after,#footer::after{clear:both}
139 #content{margin-top:1.25em}
140 #content::before{content:none}
141 #header>h1:first-child{color:rgba(0,0,0,.85);margin-top:2.25rem;margin-bottom:0}
142 #header>h1:first-child+#toc{margin-top:8px;border-top:1px solid #dddddf}
143 #header>h1:only-child,body.toc2 #header>h1:nth-last-child(2){border-bottom:1px solid #dddddf;padding-bottom:8px}
144 #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}
145 #header .details span:first-child{margin-left:-.125em}
146 #header .details span.email a{color:rgba(0,0,0,.85)}
147 #header .details br{display:none}
148 #header .details br+span::before{content:"\00a0\2013\00a0"}
149 #header .details br+span.author::before{content:"\00a0\22c5\00a0";color:rgba(0,0,0,.85)}
150 #header .details br+span#revremark::before{content:"\00a0|\00a0"}
151 #header #revnumber{text-transform:capitalize}
152 #header #revnumber::after{content:"\00a0"}
153 #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}
154 #toc{border-bottom:1px solid #e7e7e9;padding-bottom:.5em}
155 #toc>ul{margin-left:.125em}
156 #toc ul.sectlevel0>li>a{font-style:italic}
157 #toc ul.sectlevel0 ul.sectlevel1{margin:.5em 0}
158 #toc ul{font-family:"Open Sans","DejaVu Sans",sans-serif;list-style-type:none}
159 #toc li{line-height:1.3334;margin-top:.3334em}
160 #toc a{text-decoration:none}
161 #toc a:active{text-decoration:underline}
162 #toctitle{color:#7a2518;font-size:1.2em}
163 @media screen and (min-width:768px){#toctitle{font-size:1.375em}
164 body.toc2{padding-left:15em;padding-right:0}
165 #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}
166 #toc.toc2 #toctitle{margin-top:0;margin-bottom:.8rem;font-size:1.2em}
167 #toc.toc2>ul{font-size:.9em;margin-bottom:0}
168 #toc.toc2 ul ul{margin-left:0;padding-left:1em}
169 #toc.toc2 ul.sectlevel0 ul.sectlevel1{padding-left:0;margin-top:.5em;margin-bottom:.5em}
170 body.toc2.toc-right{padding-left:0;padding-right:15em}
171 body.toc2.toc-right #toc.toc2{border-right-width:0;border-left:1px solid #e7e7e9;left:auto;right:0}}
172 @media screen and (min-width:1280px){body.toc2{padding-left:20em;padding-right:0}
173 #toc.toc2{width:20em}
174 #toc.toc2 #toctitle{font-size:1.375em}
175 #toc.toc2>ul{font-size:.95em}
176 #toc.toc2 ul ul{padding-left:1.25em}
177 body.toc2.toc-right{padding-left:0;padding-right:20em}}
178 #content #toc{border:1px solid #e0e0dc;margin-bottom:1.25em;padding:1.25em;background:#f8f8f7;border-radius:4px}
179 #content #toc>:first-child{margin-top:0}
180 #content #toc>:last-child{margin-bottom:0}
181 #footer{max-width:none;background:rgba(0,0,0,.8);padding:1.25em}
182 #footer-text{color:hsla(0,0%,100%,.8);line-height:1.44}
183 #content{margin-bottom:.625em}
184 .sect1{padding-bottom:.625em}
185 @media screen and (min-width:768px){#content{margin-bottom:1.25em}
186 .sect1{padding-bottom:1.25em}}
187 .sect1:last-child{padding-bottom:0}
188 .sect1+.sect1{border-top:1px solid #e7e7e9}
189 #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}
190 #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}
191 #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}
192 #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}
193 #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}
194 details,.audioblock,.imageblock,.literalblock,.listingblock,.stemblock,.videoblock{margin-bottom:1.25em}
195 details{margin-left:1.25rem}
196 details>summary{cursor:pointer;display:block;position:relative;line-height:1.6;margin-bottom:.625rem;outline:none;-webkit-tap-highlight-color:transparent}
197 details>summary::-webkit-details-marker{display:none}
198 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%)}
199 details[open]>summary::before{border:solid transparent;border-top:solid;border-width:.5em .3em 0;transform:translateY(15%)}
200 details>summary::after{content:"";width:1.25rem;height:1em;position:absolute;top:.3em;left:-1.25rem}
201 .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}
202 table.tableblock.fit-content>caption.title{white-space:nowrap;width:0}
203 .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)}
204 .admonitionblock>table{border-collapse:separate;border:0;background:none;width:100%}
205 .admonitionblock>table td.icon{text-align:center;width:80px}
206 .admonitionblock>table td.icon img{max-width:none}
207 .admonitionblock>table td.icon .title{font-weight:bold;font-family:"Open Sans","DejaVu Sans",sans-serif;text-transform:uppercase}
208 .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}
209 .admonitionblock>table td.content>:last-child>:last-child{margin-bottom:0}
210 .exampleblock>.content{border:1px solid #e6e6e6;margin-bottom:1.25em;padding:1.25em;background:#fff;border-radius:4px}
211 .sidebarblock{border:1px solid #dbdbd6;margin-bottom:1.25em;padding:1.25em;background:#f3f3f2;border-radius:4px}
212 .sidebarblock>.content>.title{color:#7a2518;margin-top:0;text-align:center}
213 .exampleblock>.content>:first-child,.sidebarblock>.content>:first-child{margin-top:0}
214 .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}
215 .literalblock pre,.listingblock>.content>pre{border-radius:4px;overflow-x:auto;padding:1em;font-size:.8125em}
216 @media screen and (min-width:768px){.literalblock pre,.listingblock>.content>pre{font-size:.90625em}}
217 @media screen and (min-width:1280px){.literalblock pre,.listingblock>.content>pre{font-size:1em}}
218 .literalblock pre,.listingblock>.content>pre:not(.highlight),.listingblock>.content>pre[class=highlight],.listingblock>.content>pre[class^="highlight "]{background:#f7f7f8}
219 .literalblock.output pre{color:#f7f7f8;background:rgba(0,0,0,.9)}
220 .listingblock>.content{position:relative}
221 .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}
222 .listingblock:hover code[data-lang]::before{display:block}
223 .listingblock.terminal pre .command::before{content:attr(data-prompt);padding-right:.5em;color:inherit;opacity:.5}
224 .listingblock.terminal pre .command:not([data-prompt])::before{content:"$"}
225 .listingblock pre.highlightjs{padding:0}
226 .listingblock pre.highlightjs>code{padding:1em;border-radius:4px}
227 .listingblock pre.prettyprint{border-width:0}
228 .prettyprint{background:#f7f7f8}
229 pre.prettyprint .linenums{line-height:1.45;margin-left:2em}
230 pre.prettyprint li{background:none;list-style-type:inherit;padding-left:0}
231 pre.prettyprint li code[data-lang]::before{opacity:1}
232 pre.prettyprint li:not(:first-child) code[data-lang]::before{display:none}
233 table.linenotable{border-collapse:separate;border:0;margin-bottom:0;background:none}
234 table.linenotable td[class]{color:inherit;vertical-align:top;padding:0;line-height:inherit;white-space:normal}
235 table.linenotable td.code{padding-left:.75em}
236 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}
237 pre.pygments span.linenos{display:inline-block;margin-right:.75em}
238 .quoteblock{margin:0 1em 1.25em 1.5em;display:table}
239 .quoteblock:not(.excerpt)>.title{margin-left:-1.5em;margin-bottom:.75em}
240 .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}
241 .quoteblock blockquote{margin:0;padding:0;border:0}
242 .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)}
243 .quoteblock blockquote>.paragraph:last-child p{margin-bottom:0}
244 .quoteblock .attribution{margin-top:.75em;margin-right:.5ex;text-align:right}
245 .verseblock{margin:0 1em 1.25em}
246 .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}
247 .verseblock pre strong{font-weight:400}
248 .verseblock .attribution{margin-top:1.25rem;margin-left:.5ex}
249 .quoteblock .attribution,.verseblock .attribution{font-size:.9375em;line-height:1.45;font-style:italic}
250 .quoteblock .attribution br,.verseblock .attribution br{display:none}
251 .quoteblock .attribution cite,.verseblock .attribution cite{display:block;letter-spacing:-.025em;color:rgba(0,0,0,.6)}
252 .quoteblock.abstract blockquote::before,.quoteblock.excerpt blockquote::before,.quoteblock .quoteblock blockquote::before{display:none}
253 .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}
254 .quoteblock.abstract{margin:0 1em 1.25em;display:block}
255 .quoteblock.abstract>.title{margin:0 0 .375em;font-size:1.15em;text-align:center}
256 .quoteblock.excerpt>blockquote,.quoteblock .quoteblock{padding:0 0 .25em 1em;border-left:.25em solid #dddddf}
257 .quoteblock.excerpt,.quoteblock .quoteblock{margin-left:0}
258 .quoteblock.excerpt blockquote,.quoteblock.excerpt p,.quoteblock .quoteblock blockquote,.quoteblock .quoteblock p{color:inherit;font-size:1.0625rem}
259 .quoteblock.excerpt .attribution,.quoteblock .quoteblock .attribution{color:inherit;font-size:.85rem;text-align:left;margin-right:0}
260 p.tableblock:last-child{margin-bottom:0}
261 td.tableblock>.content{margin-bottom:1.25em;word-wrap:anywhere}
262 td.tableblock>.content>:last-child{margin-bottom:-1.25em}
263 table.tableblock,th.tableblock,td.tableblock{border:0 solid #dedede}
264 table.grid-all>*>tr>*{border-width:1px}
265 table.grid-cols>*>tr>*{border-width:0 1px}
266 table.grid-rows>*>tr>*{border-width:1px 0}
267 table.frame-all{border-width:1px}
268 table.frame-ends{border-width:1px 0}
269 table.frame-sides{border-width:0 1px}
270 table.frame-none>colgroup+*>:first-child>*,table.frame-sides>colgroup+*>:first-child>*{border-top-width:0}
271 table.frame-none>:last-child>:last-child>*,table.frame-sides>:last-child>:last-child>*{border-bottom-width:0}
272 table.frame-none>*>tr>:first-child,table.frame-ends>*>tr>:first-child{border-left-width:0}
273 table.frame-none>*>tr>:last-child,table.frame-ends>*>tr>:last-child{border-right-width:0}
274 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}
275 th.halign-left,td.halign-left{text-align:left}
276 th.halign-right,td.halign-right{text-align:right}
277 th.halign-center,td.halign-center{text-align:center}
278 th.valign-top,td.valign-top{vertical-align:top}
279 th.valign-bottom,td.valign-bottom{vertical-align:bottom}
280 th.valign-middle,td.valign-middle{vertical-align:middle}
281 table thead th,table tfoot th{font-weight:bold}
282 tbody tr th{background:#f7f8f7}
283 tbody tr th,tbody tr th p,tfoot tr th,tfoot tr th p{color:rgba(0,0,0,.8);font-weight:bold}
284 p.tableblock>code:only-child{background:none;padding:0}
285 p.tableblock{font-size:1em}
286 ol{margin-left:1.75em}
287 ul li ol{margin-left:1.5em}
288 dl dd{margin-left:1.125em}
289 dl dd:last-child,dl dd:last-child>:last-child{margin-bottom:0}
290 li p,ul dd,ol dd,.olist .olist,.ulist .ulist,.ulist .olist,.olist .ulist{margin-bottom:.625em}
291 ul.checklist,ul.none,ol.none,ul.no-bullet,ol.no-bullet,ol.unnumbered,ul.unstyled,ol.unstyled{list-style-type:none}
292 ul.no-bullet,ol.no-bullet,ol.unnumbered{margin-left:.625em}
293 ul.unstyled,ol.unstyled{margin-left:0}
294 li>p:empty:only-child::before{content:"";display:inline-block}
295 ul.checklist>li>p:first-child{margin-left:-1em}
296 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}
297 ul.checklist>li>p:first-child>input[type=checkbox]:first-child{margin-right:.25em}
298 ul.inline{display:flex;flex-flow:row wrap;list-style:none;margin:0 0 .625em -1.25em}
299 ul.inline>li{margin-left:1.25em}
300 .unstyled dl dt{font-weight:400;font-style:normal}
301 ol.arabic{list-style-type:decimal}
302 ol.decimal{list-style-type:decimal-leading-zero}
303 ol.loweralpha{list-style-type:lower-alpha}
304 ol.upperalpha{list-style-type:upper-alpha}
305 ol.lowerroman{list-style-type:lower-roman}
306 ol.upperroman{list-style-type:upper-roman}
307 ol.lowergreek{list-style-type:lower-greek}
308 .hdlist>table,.colist>table{border:0;background:none}
309 .hdlist>table>tbody>tr,.colist>table>tbody>tr{background:none}
310 td.hdlist1,td.hdlist2{vertical-align:top;padding:0 .625em}
311 td.hdlist1{font-weight:bold;padding-bottom:1.25em}
312 td.hdlist2{word-wrap:anywhere}
313 .literalblock+.colist,.listingblock+.colist{margin-top:-.5em}
314 .colist td:not([class]):first-child{padding:.4em .75em 0;line-height:1;vertical-align:top}
315 .colist td:not([class]):first-child img{max-width:none}
316 .colist td:not([class]):last-child{padding:.25em 0}
317 .thumb,.th{line-height:0;display:inline-block;border:4px solid #fff;box-shadow:0 0 0 1px #ddd}
318 .imageblock.left{margin:.25em .625em 1.25em 0}
319 .imageblock.right{margin:.25em 0 1.25em .625em}
320 .imageblock>.title{margin-bottom:0}
321 .imageblock.thumb,.imageblock.th{border-width:6px}
322 .imageblock.thumb>.title,.imageblock.th>.title{padding:0 .125em}
323 .image.left,.image.right{margin-top:.25em;margin-bottom:.25em;display:inline-block;line-height:0}
324 .image.left{margin-right:.625em}
325 .image.right{margin-left:.625em}
326 a.image{text-decoration:none;display:inline-block}
327 a.image object{pointer-events:none}
328 sup.footnote,sup.footnoteref{font-size:.875em;position:static;vertical-align:super}
329 sup.footnote a,sup.footnoteref a{text-decoration:none}
330 sup.footnote a:active,sup.footnoteref a:active{text-decoration:underline}
331 #footnotes{padding-top:.75em;padding-bottom:.75em;margin-bottom:.625em}
332 #footnotes hr{width:20%;min-width:6.25em;margin:-.25em 0 .75em;border-width:1px 0 0}
333 #footnotes .footnote{padding:0 .375em 0 .225em;line-height:1.3334;font-size:.875em;margin-left:1.2em;margin-bottom:.2em}
334 #footnotes .footnote a:first-of-type{font-weight:bold;text-decoration:none;margin-left:-1.05em}
335 #footnotes .footnote:last-of-type{margin-bottom:0}
336 #content #footnotes{margin-top:-.625em;margin-bottom:0;padding:.75em 0}
337 div.unbreakable{page-break-inside:avoid}
338 .big{font-size:larger}
339 .small{font-size:smaller}
340 .underline{text-decoration:underline}
341 .overline{text-decoration:overline}
342 .line-through{text-decoration:line-through}
343 .aqua{color:#00bfbf}
344 .aqua-background{background:#00fafa}
345 .black{color:#000}
346 .black-background{background:#000}
347 .blue{color:#0000bf}
348 .blue-background{background:#0000fa}
349 .fuchsia{color:#bf00bf}
350 .fuchsia-background{background:#fa00fa}
351 .gray{color:#606060}
352 .gray-background{background:#7d7d7d}
353 .green{color:#006000}
354 .green-background{background:#007d00}
355 .lime{color:#00bf00}
356 .lime-background{background:#00fa00}
357 .maroon{color:#600000}
358 .maroon-background{background:#7d0000}
359 .navy{color:#000060}
360 .navy-background{background:#00007d}
361 .olive{color:#606000}
362 .olive-background{background:#7d7d00}
363 .purple{color:#600060}
364 .purple-background{background:#7d007d}
365 .red{color:#bf0000}
366 .red-background{background:#fa0000}
367 .silver{color:#909090}
368 .silver-background{background:#bcbcbc}
369 .teal{color:#006060}
370 .teal-background{background:#007d7d}
371 .white{color:#bfbfbf}
372 .white-background{background:#fafafa}
373 .yellow{color:#bfbf00}
374 .yellow-background{background:#fafa00}
375 span.icon>.fa{cursor:default}
376 a span.icon>.fa{cursor:inherit}
377 .admonitionblock td.icon [class^="fa icon-"]{font-size:2.5em;text-shadow:1px 1px 2px rgba(0,0,0,.5);cursor:default}
378 .admonitionblock td.icon .icon-note::before{content:"\f05a";color:#19407c}
379 .admonitionblock td.icon .icon-tip::before{content:"\f0eb";text-shadow:1px 1px 2px rgba(155,155,0,.8);color:#111}
380 .admonitionblock td.icon .icon-warning::before{content:"\f071";color:#bf6900}
381 .admonitionblock td.icon .icon-caution::before{content:"\f06d";color:#bf3400}
382 .admonitionblock td.icon .icon-important::before{content:"\f06a";color:#bf0000}
383 .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}
384 .conum[data-value] *{color:#fff!important}
385 .conum[data-value]+b{display:none}
386 .conum[data-value]::after{content:attr(data-value)}
387 pre .conum[data-value]{position:relative;top:-.125em}
388 b.conum *{color:inherit!important}
389 .conum:not([data-value]):empty{display:none}
390 dt,th.tableblock,td.content,div.footnote{text-rendering:optimizeLegibility}
391 h1,h2,p,td.content,span.alt,summary{letter-spacing:-.01em}
392 p strong,td.content strong,div.footnote strong{letter-spacing:-.005em}
393 p,blockquote,dt,td.content,td.hdlist1,span.alt,summary{font-size:1.0625rem}
394 p{margin-bottom:1.25rem}
395 .sidebarblock p,.sidebarblock dt,.sidebarblock td.content,p.tableblock{font-size:1em}
396 .exampleblock>.content{background:#fffef7;border-color:#e0e0dc;box-shadow:0 1px 4px #e0e0dc}
397 .print-only{display:none!important}
398 @page{margin:1.25cm .75cm}
399 @media print{*{box-shadow:none!important;text-shadow:none!important}
400 html{font-size:80%}
401 a{color:inherit!important;text-decoration:underline!important}
402 a.bare,a[href^="#"],a[href^="mailto:"]{text-decoration:none!important}
403 a[href^="http:"]:not(.bare)::after,a[href^="https:"]:not(.bare)::after{content:"(" attr(href) ")";display:inline-block;font-size:.875em;padding-left:.25em}
404 abbr[title]{border-bottom:1px dotted}
405 abbr[title]::after{content:" (" attr(title) ")"}
406 pre,blockquote,tr,img,object,svg{page-break-inside:avoid}
407 thead{display:table-header-group}
408 svg{max-width:100%}
409 p,blockquote,dt,td.content{font-size:1em;orphans:3;widows:3}
410 h2,h3,#toctitle,.sidebarblock>.content>.title{page-break-after:avoid}
411 #header,#content,#footnotes,#footer{max-width:none}
412 #toc,.sidebarblock,.exampleblock>.content{background:none!important}
413 #toc{border-bottom:1px solid #dddddf!important;padding-bottom:0!important}
414 body.book #header{text-align:center}
415 body.book #header>h1:first-child{border:0!important;margin:2.5em 0 1em}
416 body.book #header .details{border:0!important;display:block;padding:0!important}
417 body.book #header .details span:first-child{margin-left:0!important}
418 body.book #header .details br{display:block}
419 body.book #header .details br+span::before{content:none!important}
420 body.book #toc{border:0!important;text-align:left!important;padding:0!important;margin:0!important}
421 body.book #toc,body.book #preamble,body.book h1.sect0,body.book .sect1>h2{page-break-before:always}
422 .listingblock code[data-lang]::before{display:block}
423 #footer{padding:0 .9375em}
424 .hide-on-print{display:none!important}
425 .print-only{display:block!important}
426 .hide-for-print{display:none!important}
427 .show-for-print{display:inherit!important}}
428 @media amzn-kf8,print{#header>h1:first-child{margin-top:1.25rem}
429 .sect1{padding:0!important}
430 .sect1+.sect1{border:0}
431 #footer{background:none}
432 #footer-text{color:rgba(0,0,0,.6);font-size:.9em}}
433 @media amzn-kf8{#header,#content,#footnotes,#footer{padding:0}}
434 </style>
435 <style>
436 pre>code {
437 display: inline;
439 </style>
440 </head>
441 <body class="manpage">
442 <div id="header">
443 <h1>git-switch(1) Manual Page</h1>
444 <h2 id="_name">NAME</h2>
445 <div class="sectionbody">
446 <p>git-switch - Switch branches</p>
447 </div>
448 </div>
449 <div id="content">
450 <div class="sect1">
451 <h2 id="_synopsis">SYNOPSIS</h2>
452 <div class="sectionbody">
453 <div class="verseblock">
454 <pre class="content"><em>git switch</em> [&lt;options&gt;] [--no-guess] &lt;branch&gt;
455 <em>git switch</em> [&lt;options&gt;] --detach [&lt;start-point&gt;]
456 <em>git switch</em> [&lt;options&gt;] (-c|-C) &lt;new-branch&gt; [&lt;start-point&gt;]
457 <em>git switch</em> [&lt;options&gt;] --orphan &lt;new-branch&gt;</pre>
458 </div>
459 </div>
460 </div>
461 <div class="sect1">
462 <h2 id="_description">DESCRIPTION</h2>
463 <div class="sectionbody">
464 <div class="paragraph">
465 <p>Switch to a specified branch. The working tree and the index are
466 updated to match the branch. All new commits will be added to the tip
467 of this branch.</p>
468 </div>
469 <div class="paragraph">
470 <p>Optionally a new branch could be created with either <code>-c</code>, <code>-C</code>,
471 automatically from a remote branch of same name (see <code>--guess</code>), or
472 detach the working tree from any branch with <code>--detach</code>, along with
473 switching.</p>
474 </div>
475 <div class="paragraph">
476 <p>Switching branches does not require a clean index and working tree
477 (i.e. no differences compared to <code>HEAD</code>). The operation is aborted
478 however if the operation leads to loss of local changes, unless told
479 otherwise with <code>--discard-changes</code> or <code>--merge</code>.</p>
480 </div>
481 <div class="paragraph">
482 <p>THIS COMMAND IS EXPERIMENTAL. THE BEHAVIOR MAY CHANGE.</p>
483 </div>
484 </div>
485 </div>
486 <div class="sect1">
487 <h2 id="_options">OPTIONS</h2>
488 <div class="sectionbody">
489 <div class="dlist">
490 <dl>
491 <dt class="hdlist1">&lt;branch&gt;</dt>
492 <dd>
493 <p>Branch to switch to.</p>
494 </dd>
495 <dt class="hdlist1">&lt;new-branch&gt;</dt>
496 <dd>
497 <p>Name for the new branch.</p>
498 </dd>
499 <dt class="hdlist1">&lt;start-point&gt;</dt>
500 <dd>
501 <p>The starting point for the new branch. Specifying a
502 <em>&lt;start-point&gt;</em> allows you to create a branch based on some
503 other point in history than where HEAD currently points. (Or,
504 in the case of <code>--detach</code>, allows you to inspect and detach
505 from some other point.)</p>
506 <div class="paragraph">
507 <p>You can use the <code>@</code>{-N} syntax to refer to the N-th last
508 branch/commit switched to using "git switch" or "git checkout"
509 operation. You may also specify <code>-</code> which is synonymous to <code>@</code>{-1}.
510 This is often used to switch quickly between two branches, or to undo
511 a branch switch by mistake.</p>
512 </div>
513 <div class="paragraph">
514 <p>As a special case, you may use <code>A</code><code>...</code><code>B</code> as a shortcut for the merge
515 base of <code>A</code> and <code>B</code> if there is exactly one merge base. You can leave
516 out at most one of <code>A</code> and <code>B</code>, in which case it defaults to <code>HEAD</code>.</p>
517 </div>
518 </dd>
519 <dt class="hdlist1">-c &lt;new-branch&gt;</dt>
520 <dt class="hdlist1">--create &lt;new-branch&gt;</dt>
521 <dd>
522 <p>Create a new branch named <em>&lt;new-branch&gt;</em> starting at
523 <em>&lt;start-point&gt;</em> before switching to the branch. This is the
524 transactional equivalent of</p>
525 <div class="listingblock">
526 <div class="content">
527 <pre>$ git branch &lt;new-branch&gt;
528 $ git switch &lt;new-branch&gt;</pre>
529 </div>
530 </div>
531 <div class="paragraph">
532 <p>that is to say, the branch is not reset/created unless "git switch" is
533 successful (e.g., when the branch is in use in another worktree, not
534 just the current branch stays the same, but the branch is not reset to
535 the start-point, either).</p>
536 </div>
537 </dd>
538 <dt class="hdlist1">-C &lt;new-branch&gt;</dt>
539 <dt class="hdlist1">--force-create &lt;new-branch&gt;</dt>
540 <dd>
541 <p>Similar to <code>--create</code> except that if <em>&lt;new-branch&gt;</em> already
542 exists, it will be reset to <em>&lt;start-point&gt;</em>. This is a
543 convenient shortcut for:</p>
544 <div class="listingblock">
545 <div class="content">
546 <pre>$ git branch -f &lt;new-branch&gt;
547 $ git switch &lt;new-branch&gt;</pre>
548 </div>
549 </div>
550 </dd>
551 <dt class="hdlist1">-d</dt>
552 <dt class="hdlist1">--detach</dt>
553 <dd>
554 <p>Switch to a commit for inspection and discardable
555 experiments. See the "DETACHED HEAD" section in
556 <a href="git-checkout.html">git-checkout(1)</a> for details.</p>
557 </dd>
558 <dt class="hdlist1">--guess</dt>
559 <dt class="hdlist1">--no-guess</dt>
560 <dd>
561 <p>If <em>&lt;branch&gt;</em> is not found but there does exist a tracking
562 branch in exactly one remote (call it <em>&lt;remote&gt;</em>) with a
563 matching name, treat as equivalent to</p>
564 <div class="listingblock">
565 <div class="content">
566 <pre>$ git switch -c &lt;branch&gt; --track &lt;remote&gt;/&lt;branch&gt;</pre>
567 </div>
568 </div>
569 <div class="paragraph">
570 <p>If the branch exists in multiple remotes and one of them is named by
571 the <code>checkout.defaultRemote</code> configuration variable, we&#8217;ll use that
572 one for the purposes of disambiguation, even if the <em>&lt;branch&gt;</em> isn&#8217;t
573 unique across all remotes. Set it to e.g. <code>checkout.defaultRemote=origin</code>
574 to always checkout remote branches from there if <em>&lt;branch&gt;</em> is
575 ambiguous but exists on the <em>origin</em> remote. See also
576 <code>checkout.defaultRemote</code> in <a href="git-config.html">git-config(1)</a>.</p>
577 </div>
578 <div class="paragraph">
579 <p><code>--guess</code> is the default behavior. Use <code>--no-guess</code> to disable it.</p>
580 </div>
581 <div class="paragraph">
582 <p>The default behavior can be set via the <code>checkout.guess</code> configuration
583 variable.</p>
584 </div>
585 </dd>
586 <dt class="hdlist1">-f</dt>
587 <dt class="hdlist1">--force</dt>
588 <dd>
589 <p>An alias for <code>--discard-changes</code>.</p>
590 </dd>
591 <dt class="hdlist1">--discard-changes</dt>
592 <dd>
593 <p>Proceed even if the index or the working tree differs from
594 <code>HEAD</code>. Both the index and working tree are restored to match
595 the switching target. If <code>--recurse-submodules</code> is specified,
596 submodule content is also restored to match the switching
597 target. This is used to throw away local changes.</p>
598 </dd>
599 <dt class="hdlist1">-m</dt>
600 <dt class="hdlist1">--merge</dt>
601 <dd>
602 <p>If you have local modifications to one or more files that are
603 different between the current branch and the branch to which
604 you are switching, the command refuses to switch branches in
605 order to preserve your modifications in context. However,
606 with this option, a three-way merge between the current
607 branch, your working tree contents, and the new branch is
608 done, and you will be on the new branch.</p>
609 <div class="paragraph">
610 <p>When a merge conflict happens, the index entries for conflicting
611 paths are left unmerged, and you need to resolve the conflicts
612 and mark the resolved paths with <code>git</code> <code>add</code> (or <code>git</code> <code>rm</code> if the merge
613 should result in deletion of the path).</p>
614 </div>
615 </dd>
616 <dt class="hdlist1">--conflict=&lt;style&gt;</dt>
617 <dd>
618 <p>The same as <code>--merge</code> option above, but changes the way the
619 conflicting hunks are presented, overriding the
620 <code>merge.conflictStyle</code> configuration variable. Possible values are
621 "merge" (default), "diff3", and "zdiff3".</p>
622 </dd>
623 <dt class="hdlist1">-q</dt>
624 <dt class="hdlist1">--quiet</dt>
625 <dd>
626 <p>Quiet, suppress feedback messages.</p>
627 </dd>
628 <dt class="hdlist1">--progress</dt>
629 <dt class="hdlist1">--no-progress</dt>
630 <dd>
631 <p>Progress status is reported on the standard error stream
632 by default when it is attached to a terminal, unless <code>--quiet</code>
633 is specified. This flag enables progress reporting even if not
634 attached to a terminal, regardless of <code>--quiet</code>.</p>
635 </dd>
636 <dt class="hdlist1">-t</dt>
637 <dt class="hdlist1">--track [direct|inherit]</dt>
638 <dd>
639 <p>When creating a new branch, set up "upstream" configuration.
640 <code>-c</code> is implied. See <code>--track</code> in <a href="git-branch.html">git-branch(1)</a> for
641 details.</p>
642 <div class="paragraph">
643 <p>If no <code>-c</code> option is given, the name of the new branch will be derived
644 from the remote-tracking branch, by looking at the local part of the
645 refspec configured for the corresponding remote, and then stripping
646 the initial part up to the "*". This would tell us to use <code>hack</code> as
647 the local branch when branching off of <code>origin/hack</code> (or
648 <code>remotes/origin/hack</code>, or even <code>refs/remotes/origin/hack</code>). If the
649 given name has no slash, or the above guessing results in an empty
650 name, the guessing is aborted. You can explicitly give a name with
651 <code>-c</code> in such a case.</p>
652 </div>
653 </dd>
654 <dt class="hdlist1">--no-track</dt>
655 <dd>
656 <p>Do not set up "upstream" configuration, even if the
657 <code>branch.autoSetupMerge</code> configuration variable is true.</p>
658 </dd>
659 <dt class="hdlist1">--orphan &lt;new-branch&gt;</dt>
660 <dd>
661 <p>Create a new unborn branch, named <em>&lt;new-branch&gt;</em>. All
662 tracked files are removed.</p>
663 </dd>
664 <dt class="hdlist1">--ignore-other-worktrees</dt>
665 <dd>
666 <p><code>git</code> <code>switch</code> refuses when the wanted ref is already
667 checked out by another worktree. This option makes it check
668 the ref out anyway. In other words, the ref can be held by
669 more than one worktree.</p>
670 </dd>
671 <dt class="hdlist1">--recurse-submodules</dt>
672 <dt class="hdlist1">--no-recurse-submodules</dt>
673 <dd>
674 <p>Using <code>--recurse-submodules</code> will update the content of all
675 active submodules according to the commit recorded in the
676 superproject. If nothing (or <code>--no-recurse-submodules</code>) is
677 used, submodules working trees will not be updated. Just
678 like <a href="git-submodule.html">git-submodule(1)</a>, this will detach <code>HEAD</code> of the
679 submodules.</p>
680 </dd>
681 </dl>
682 </div>
683 </div>
684 </div>
685 <div class="sect1">
686 <h2 id="_examples">EXAMPLES</h2>
687 <div class="sectionbody">
688 <div class="paragraph">
689 <p>The following command switches to the "master" branch:</p>
690 </div>
691 <div class="listingblock">
692 <div class="content">
693 <pre>$ git switch master</pre>
694 </div>
695 </div>
696 <div class="paragraph">
697 <p>After working in the wrong branch, switching to the correct branch
698 would be done using:</p>
699 </div>
700 <div class="listingblock">
701 <div class="content">
702 <pre>$ git switch mytopic</pre>
703 </div>
704 </div>
705 <div class="paragraph">
706 <p>However, your "wrong" branch and correct "mytopic" branch may differ
707 in files that you have modified locally, in which case the above
708 switch would fail like this:</p>
709 </div>
710 <div class="listingblock">
711 <div class="content">
712 <pre>$ git switch mytopic
713 error: You have local changes to 'frotz'; not switching branches.</pre>
714 </div>
715 </div>
716 <div class="paragraph">
717 <p>You can give the <code>-m</code> flag to the command, which would try a three-way
718 merge:</p>
719 </div>
720 <div class="listingblock">
721 <div class="content">
722 <pre>$ git switch -m mytopic
723 Auto-merging frotz</pre>
724 </div>
725 </div>
726 <div class="paragraph">
727 <p>After this three-way merge, the local modifications are <em>not</em>
728 registered in your index file, so <code>git</code> <code>diff</code> would show you what
729 changes you made since the tip of the new branch.</p>
730 </div>
731 <div class="paragraph">
732 <p>To switch back to the previous branch before we switched to mytopic
733 (i.e. "master" branch):</p>
734 </div>
735 <div class="listingblock">
736 <div class="content">
737 <pre>$ git switch -</pre>
738 </div>
739 </div>
740 <div class="paragraph">
741 <p>You can grow a new branch from any commit. For example, switch to
742 "HEAD~3" and create branch "fixup":</p>
743 </div>
744 <div class="listingblock">
745 <div class="content">
746 <pre>$ git switch -c fixup HEAD~3
747 Switched to a new branch 'fixup'</pre>
748 </div>
749 </div>
750 <div class="paragraph">
751 <p>If you want to start a new branch from a remote branch of the same
752 name:</p>
753 </div>
754 <div class="listingblock">
755 <div class="content">
756 <pre>$ git switch new-topic
757 Branch 'new-topic' set up to track remote branch 'new-topic' from 'origin'
758 Switched to a new branch 'new-topic'</pre>
759 </div>
760 </div>
761 <div class="paragraph">
762 <p>To check out commit <code>HEAD~3</code> for temporary inspection or experiment
763 without creating a new branch:</p>
764 </div>
765 <div class="listingblock">
766 <div class="content">
767 <pre>$ git switch --detach HEAD~3
768 HEAD is now at 9fc9555312 Merge branch 'cc/shared-index-permbits'</pre>
769 </div>
770 </div>
771 <div class="paragraph">
772 <p>If it turns out whatever you have done is worth keeping, you can
773 always create a new name for it (without switching away):</p>
774 </div>
775 <div class="listingblock">
776 <div class="content">
777 <pre>$ git switch -c good-surprises</pre>
778 </div>
779 </div>
780 </div>
781 </div>
782 <div class="sect1">
783 <h2 id="_configuration">CONFIGURATION</h2>
784 <div class="sectionbody">
785 <div class="paragraph">
786 <p>Everything below this line in this section is selectively included
787 from the <a href="git-config.html">git-config(1)</a> documentation. The content is the same
788 as what&#8217;s found there:</p>
789 </div>
790 <div class="dlist">
791 <dl>
792 <dt class="hdlist1">checkout.defaultRemote</dt>
793 <dd>
794 <p>When you run <code>git</code> <code>checkout</code> <em>&lt;something&gt;</em>
795 or <code>git</code> <code>switch</code> <em>&lt;something&gt;</em> and only have one
796 remote, it may implicitly fall back on checking out and
797 tracking e.g. <code>origin/</code><em>&lt;something&gt;</em>. This stops working as soon
798 as you have more than one remote with a <em>&lt;something&gt;</em>
799 reference. This setting allows for setting the name of a
800 preferred remote that should always win when it comes to
801 disambiguation. The typical use-case is to set this to
802 <code>origin</code>.</p>
803 <div class="paragraph">
804 <p>Currently this is used by <a href="git-switch.html">git-switch(1)</a> and
805 <a href="git-checkout.html">git-checkout(1)</a> when <code>git</code> <code>checkout</code> <em>&lt;something&gt;</em>
806 or <code>git</code> <code>switch</code> <em>&lt;something&gt;</em>
807 will checkout the <em>&lt;something&gt;</em> branch on another remote,
808 and by <a href="git-worktree.html">git-worktree(1)</a> when <code>git</code> <code>worktree</code> <code>add</code> refers to a
809 remote branch. This setting might be used for other checkout-like
810 commands or functionality in the future.</p>
811 </div>
812 </dd>
813 <dt class="hdlist1">checkout.guess</dt>
814 <dd>
815 <p>Provides the default value for the <code>--guess</code> or <code>--no-guess</code>
816 option in <code>git</code> <code>checkout</code> and <code>git</code> <code>switch</code>. See
817 <a href="git-switch.html">git-switch(1)</a> and <a href="git-checkout.html">git-checkout(1)</a>.</p>
818 </dd>
819 <dt class="hdlist1">checkout.workers</dt>
820 <dd>
821 <p>The number of parallel workers to use when updating the working tree.
822 The default is one, i.e. sequential execution. If set to a value less
823 than one, Git will use as many workers as the number of logical cores
824 available. This setting and <code>checkout.thresholdForParallelism</code> affect
825 all commands that perform checkout. E.g. checkout, clone, reset,
826 sparse-checkout, etc.</p>
827 <div class="paragraph">
828 <p>Note: Parallel checkout usually delivers better performance for repositories
829 located on SSDs or over NFS. For repositories on spinning disks and/or machines
830 with a small number of cores, the default sequential checkout often performs
831 better. The size and compression level of a repository might also influence how
832 well the parallel version performs.</p>
833 </div>
834 </dd>
835 <dt class="hdlist1">checkout.thresholdForParallelism</dt>
836 <dd>
837 <p>When running parallel checkout with a small number of files, the cost
838 of subprocess spawning and inter-process communication might outweigh
839 the parallelization gains. This setting allows you to define the minimum
840 number of files for which parallel checkout should be attempted. The
841 default is 100.</p>
842 </dd>
843 </dl>
844 </div>
845 </div>
846 </div>
847 <div class="sect1">
848 <h2 id="_see_also">SEE ALSO</h2>
849 <div class="sectionbody">
850 <div class="paragraph">
851 <p><a href="git-checkout.html">git-checkout(1)</a>,
852 <a href="git-branch.html">git-branch(1)</a></p>
853 </div>
854 </div>
855 </div>
856 <div class="sect1">
857 <h2 id="_git">GIT</h2>
858 <div class="sectionbody">
859 <div class="paragraph">
860 <p>Part of the <a href="git.html">git(1)</a> suite</p>
861 </div>
862 </div>
863 </div>
864 </div>
865 <div id="footer">
866 <div id="footer-text">
867 Last updated 2024-01-02 14:28:43 -0800
868 </div>
869 </div>
870 </body>
871 </html>