updated docs
[rubygit.git] / doc / classes / Git / Branch.html
blobd5d048623041985a69e7a37a0bc6d6e78db2f739
1 <?xml version="1.0" encoding="iso-8859-1"?>
2 <!DOCTYPE html
3 PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
6 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
7 <head>
8 <title>Class: Git::Branch</title>
9 <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10 <meta http-equiv="Content-Script-Type" content="text/javascript" />
11 <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
12 <script type="text/javascript">
13 // <![CDATA[
15 function popupCode( url ) {
16 window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
19 function toggleCode( id ) {
20 if ( document.getElementById )
21 elem = document.getElementById( id );
22 else if ( document.all )
23 elem = eval( "document.all." + id );
24 else
25 return false;
27 elemStyle = elem.style;
29 if ( elemStyle.display != "block" ) {
30 elemStyle.display = "block"
31 } else {
32 elemStyle.display = "none"
35 return true;
38 // Make codeblocks hidden by default
39 document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
41 // ]]>
42 </script>
44 </head>
45 <body>
49 <div id="classHeader">
50 <table class="header-table">
51 <tr class="top-aligned-row">
52 <td><strong>Class</strong></td>
53 <td class="class-name-in-header">Git::Branch</td>
54 </tr>
55 <tr class="top-aligned-row">
56 <td><strong>In:</strong></td>
57 <td>
58 <a href="../../files/lib/git/branch_rb.html">
59 lib/git/branch.rb
60 </a>
61 <br />
62 </td>
63 </tr>
65 <tr class="top-aligned-row">
66 <td><strong>Parent:</strong></td>
67 <td>
68 <a href="Path.html">
69 Path
70 </a>
71 </td>
72 </tr>
73 </table>
74 </div>
75 <!-- banner header -->
77 <div id="bodyContent">
81 <div id="contextContent">
85 </div>
87 <div id="method-list">
88 <h3 class="section-bar">Methods</h3>
90 <div class="name-list">
91 <a href="#M000082">archive</a>&nbsp;&nbsp;
92 <a href="#M000081">checkout</a>&nbsp;&nbsp;
93 <a href="#M000084">create</a>&nbsp;&nbsp;
94 <a href="#M000086">current</a>&nbsp;&nbsp;
95 <a href="#M000085">delete</a>&nbsp;&nbsp;
96 <a href="#M000080">gcommit</a>&nbsp;&nbsp;
97 <a href="#M000083">in_branch</a>&nbsp;&nbsp;
98 <a href="#M000087">merge</a>&nbsp;&nbsp;
99 <a href="#M000079">new</a>&nbsp;&nbsp;
100 <a href="#M000089">to_a</a>&nbsp;&nbsp;
101 <a href="#M000090">to_s</a>&nbsp;&nbsp;
102 <a href="#M000088">update_ref</a>&nbsp;&nbsp;
103 </div>
104 </div>
106 </div>
109 <!-- if includes -->
111 <div id="section">
117 <div id="attribute-list">
118 <h3 class="section-bar">Attributes</h3>
120 <div class="name-list">
121 <table>
122 <tr class="top-aligned-row context-row">
123 <td class="context-item-name">full</td>
124 <td class="context-item-value">&nbsp;[RW]&nbsp;</td>
125 <td class="context-item-desc"></td>
126 </tr>
127 <tr class="top-aligned-row context-row">
128 <td class="context-item-name">name</td>
129 <td class="context-item-value">&nbsp;[RW]&nbsp;</td>
130 <td class="context-item-desc"></td>
131 </tr>
132 <tr class="top-aligned-row context-row">
133 <td class="context-item-name">remote</td>
134 <td class="context-item-value">&nbsp;[RW]&nbsp;</td>
135 <td class="context-item-desc"></td>
136 </tr>
137 </table>
138 </div>
139 </div>
143 <!-- if method_list -->
144 <div id="methods">
145 <h3 class="section-bar">Public Class methods</h3>
147 <div id="method-M000079" class="method-detail">
148 <a name="M000079"></a>
150 <div class="method-heading">
151 <a href="#M000079" class="method-signature">
152 <span class="method-name">new</span><span class="method-args">(base, name)</span>
153 </a>
154 </div>
156 <div class="method-description">
157 <p><a class="source-toggle" href="#"
158 onclick="toggleCode('M000079-source');return false;">[Source]</a></p>
159 <div class="method-source-code" id="M000079-source">
160 <pre>
161 <span class="ruby-comment cmt"># File lib/git/branch.rb, line 9</span>
162 <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">base</span>, <span class="ruby-identifier">name</span>)
163 <span class="ruby-ivar">@remote</span> = <span class="ruby-keyword kw">nil</span>
164 <span class="ruby-ivar">@full</span> = <span class="ruby-identifier">name</span>
165 <span class="ruby-ivar">@base</span> = <span class="ruby-identifier">base</span>
167 <span class="ruby-identifier">parts</span> = <span class="ruby-identifier">name</span>.<span class="ruby-identifier">split</span>(<span class="ruby-value str">'/'</span>)
168 <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">parts</span>[<span class="ruby-value">1</span>]
169 <span class="ruby-ivar">@remote</span> = <span class="ruby-constant">Git</span><span class="ruby-operator">::</span><span class="ruby-constant">Remote</span>.<span class="ruby-identifier">new</span>(<span class="ruby-ivar">@base</span>, <span class="ruby-identifier">parts</span>[<span class="ruby-value">0</span>])
170 <span class="ruby-ivar">@name</span> = <span class="ruby-identifier">parts</span>[<span class="ruby-value">1</span>]
171 <span class="ruby-keyword kw">else</span>
172 <span class="ruby-ivar">@name</span> = <span class="ruby-identifier">parts</span>[<span class="ruby-value">0</span>]
173 <span class="ruby-keyword kw">end</span>
174 <span class="ruby-keyword kw">end</span>
175 </pre>
176 </div>
177 </div>
178 </div>
180 <h3 class="section-bar">Public Instance methods</h3>
182 <div id="method-M000082" class="method-detail">
183 <a name="M000082"></a>
185 <div class="method-heading">
186 <a href="#M000082" class="method-signature">
187 <span class="method-name">archive</span><span class="method-args">(file, opts = {})</span>
188 </a>
189 </div>
191 <div class="method-description">
192 <p><a class="source-toggle" href="#"
193 onclick="toggleCode('M000082-source');return false;">[Source]</a></p>
194 <div class="method-source-code" id="M000082-source">
195 <pre>
196 <span class="ruby-comment cmt"># File lib/git/branch.rb, line 33</span>
197 <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">archive</span>(<span class="ruby-identifier">file</span>, <span class="ruby-identifier">opts</span> = {})
198 <span class="ruby-ivar">@base</span>.<span class="ruby-identifier">lib</span>.<span class="ruby-identifier">archive</span>(<span class="ruby-ivar">@full</span>, <span class="ruby-identifier">file</span>, <span class="ruby-identifier">opts</span>)
199 <span class="ruby-keyword kw">end</span>
200 </pre>
201 </div>
202 </div>
203 </div>
205 <div id="method-M000081" class="method-detail">
206 <a name="M000081"></a>
208 <div class="method-heading">
209 <a href="#M000081" class="method-signature">
210 <span class="method-name">checkout</span><span class="method-args">()</span>
211 </a>
212 </div>
214 <div class="method-description">
215 <p><a class="source-toggle" href="#"
216 onclick="toggleCode('M000081-source');return false;">[Source]</a></p>
217 <div class="method-source-code" id="M000081-source">
218 <pre>
219 <span class="ruby-comment cmt"># File lib/git/branch.rb, line 28</span>
220 <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">checkout</span>
221 <span class="ruby-identifier">check_if_create</span>
222 <span class="ruby-ivar">@base</span>.<span class="ruby-identifier">checkout</span>(<span class="ruby-ivar">@full</span>)
223 <span class="ruby-keyword kw">end</span>
224 </pre>
225 </div>
226 </div>
227 </div>
229 <div id="method-M000084" class="method-detail">
230 <a name="M000084"></a>
232 <div class="method-heading">
233 <a href="#M000084" class="method-signature">
234 <span class="method-name">create</span><span class="method-args">()</span>
235 </a>
236 </div>
238 <div class="method-description">
239 <p><a class="source-toggle" href="#"
240 onclick="toggleCode('M000084-source');return false;">[Source]</a></p>
241 <div class="method-source-code" id="M000084-source">
242 <pre>
243 <span class="ruby-comment cmt"># File lib/git/branch.rb, line 53</span>
244 <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">create</span>
245 <span class="ruby-identifier">check_if_create</span>
246 <span class="ruby-keyword kw">end</span>
247 </pre>
248 </div>
249 </div>
250 </div>
252 <div id="method-M000086" class="method-detail">
253 <a name="M000086"></a>
255 <div class="method-heading">
256 <a href="#M000086" class="method-signature">
257 <span class="method-name">current</span><span class="method-args">()</span>
258 </a>
259 </div>
261 <div class="method-description">
262 <p><a class="source-toggle" href="#"
263 onclick="toggleCode('M000086-source');return false;">[Source]</a></p>
264 <div class="method-source-code" id="M000086-source">
265 <pre>
266 <span class="ruby-comment cmt"># File lib/git/branch.rb, line 61</span>
267 <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">current</span>
268 <span class="ruby-identifier">determine_current</span>
269 <span class="ruby-keyword kw">end</span>
270 </pre>
271 </div>
272 </div>
273 </div>
275 <div id="method-M000085" class="method-detail">
276 <a name="M000085"></a>
278 <div class="method-heading">
279 <a href="#M000085" class="method-signature">
280 <span class="method-name">delete</span><span class="method-args">()</span>
281 </a>
282 </div>
284 <div class="method-description">
285 <p><a class="source-toggle" href="#"
286 onclick="toggleCode('M000085-source');return false;">[Source]</a></p>
287 <div class="method-source-code" id="M000085-source">
288 <pre>
289 <span class="ruby-comment cmt"># File lib/git/branch.rb, line 57</span>
290 <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">delete</span>
291 <span class="ruby-ivar">@base</span>.<span class="ruby-identifier">lib</span>.<span class="ruby-identifier">branch_delete</span>(<span class="ruby-ivar">@name</span>)
292 <span class="ruby-keyword kw">end</span>
293 </pre>
294 </div>
295 </div>
296 </div>
298 <div id="method-M000080" class="method-detail">
299 <a name="M000080"></a>
301 <div class="method-heading">
302 <a href="#M000080" class="method-signature">
303 <span class="method-name">gcommit</span><span class="method-args">()</span>
304 </a>
305 </div>
307 <div class="method-description">
308 <p><a class="source-toggle" href="#"
309 onclick="toggleCode('M000080-source');return false;">[Source]</a></p>
310 <div class="method-source-code" id="M000080-source">
311 <pre>
312 <span class="ruby-comment cmt"># File lib/git/branch.rb, line 23</span>
313 <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">gcommit</span>
314 <span class="ruby-ivar">@gcommit</span> = <span class="ruby-ivar">@base</span>.<span class="ruby-identifier">object</span>(<span class="ruby-ivar">@full</span>) <span class="ruby-keyword kw">if</span> <span class="ruby-operator">!</span><span class="ruby-ivar">@gcommit</span>
315 <span class="ruby-ivar">@gcommit</span>
316 <span class="ruby-keyword kw">end</span>
317 </pre>
318 </div>
319 </div>
320 </div>
322 <div id="method-M000083" class="method-detail">
323 <a name="M000083"></a>
325 <div class="method-heading">
326 <a href="#M000083" class="method-signature">
327 <span class="method-name">in_branch</span><span class="method-args">(message = 'in branch work') {|| ...}</span>
328 </a>
329 </div>
331 <div class="method-description">
333 g.branch(&#8216;new_branch&#8217;).<a
334 href="Branch.html#M000083">in_branch</a> do
335 </p>
336 <pre>
337 # create new file
338 # do other stuff
339 return true # auto commits and switches back
340 </pre>
343 </p>
344 <p><a class="source-toggle" href="#"
345 onclick="toggleCode('M000083-source');return false;">[Source]</a></p>
346 <div class="method-source-code" id="M000083-source">
347 <pre>
348 <span class="ruby-comment cmt"># File lib/git/branch.rb, line 42</span>
349 <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">in_branch</span> (<span class="ruby-identifier">message</span> = <span class="ruby-value str">'in branch work'</span>)
350 <span class="ruby-identifier">old_current</span> = <span class="ruby-ivar">@base</span>.<span class="ruby-identifier">lib</span>.<span class="ruby-identifier">branch_current</span>
351 <span class="ruby-identifier">checkout</span>
352 <span class="ruby-keyword kw">if</span> <span class="ruby-keyword kw">yield</span>
353 <span class="ruby-ivar">@base</span>.<span class="ruby-identifier">commit_all</span>(<span class="ruby-identifier">message</span>)
354 <span class="ruby-keyword kw">else</span>
355 <span class="ruby-ivar">@base</span>.<span class="ruby-identifier">reset_hard</span>
356 <span class="ruby-keyword kw">end</span>
357 <span class="ruby-ivar">@base</span>.<span class="ruby-identifier">checkout</span>(<span class="ruby-identifier">old_current</span>)
358 <span class="ruby-keyword kw">end</span>
359 </pre>
360 </div>
361 </div>
362 </div>
364 <div id="method-M000087" class="method-detail">
365 <a name="M000087"></a>
367 <div class="method-heading">
368 <a href="#M000087" class="method-signature">
369 <span class="method-name">merge</span><span class="method-args">(branch = nil, message = nil)</span>
370 </a>
371 </div>
373 <div class="method-description">
374 <p><a class="source-toggle" href="#"
375 onclick="toggleCode('M000087-source');return false;">[Source]</a></p>
376 <div class="method-source-code" id="M000087-source">
377 <pre>
378 <span class="ruby-comment cmt"># File lib/git/branch.rb, line 65</span>
379 <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">merge</span>(<span class="ruby-identifier">branch</span> = <span class="ruby-keyword kw">nil</span>, <span class="ruby-identifier">message</span> = <span class="ruby-keyword kw">nil</span>)
380 <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">branch</span>
381 <span class="ruby-identifier">in_branch</span> <span class="ruby-keyword kw">do</span>
382 <span class="ruby-ivar">@base</span>.<span class="ruby-identifier">merge</span>(<span class="ruby-identifier">branch</span>, <span class="ruby-identifier">message</span>)
383 <span class="ruby-keyword kw">false</span>
384 <span class="ruby-keyword kw">end</span>
385 <span class="ruby-comment cmt"># merge a branch into this one</span>
386 <span class="ruby-keyword kw">else</span>
387 <span class="ruby-comment cmt"># merge this branch into the current one</span>
388 <span class="ruby-ivar">@base</span>.<span class="ruby-identifier">merge</span>(<span class="ruby-ivar">@name</span>)
389 <span class="ruby-keyword kw">end</span>
390 <span class="ruby-keyword kw">end</span>
391 </pre>
392 </div>
393 </div>
394 </div>
396 <div id="method-M000089" class="method-detail">
397 <a name="M000089"></a>
399 <div class="method-heading">
400 <a href="#M000089" class="method-signature">
401 <span class="method-name">to_a</span><span class="method-args">()</span>
402 </a>
403 </div>
405 <div class="method-description">
406 <p><a class="source-toggle" href="#"
407 onclick="toggleCode('M000089-source');return false;">[Source]</a></p>
408 <div class="method-source-code" id="M000089-source">
409 <pre>
410 <span class="ruby-comment cmt"># File lib/git/branch.rb, line 82</span>
411 <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_a</span>
412 [<span class="ruby-ivar">@full</span>]
413 <span class="ruby-keyword kw">end</span>
414 </pre>
415 </div>
416 </div>
417 </div>
419 <div id="method-M000090" class="method-detail">
420 <a name="M000090"></a>
422 <div class="method-heading">
423 <a href="#M000090" class="method-signature">
424 <span class="method-name">to_s</span><span class="method-args">()</span>
425 </a>
426 </div>
428 <div class="method-description">
429 <p><a class="source-toggle" href="#"
430 onclick="toggleCode('M000090-source');return false;">[Source]</a></p>
431 <div class="method-source-code" id="M000090-source">
432 <pre>
433 <span class="ruby-comment cmt"># File lib/git/branch.rb, line 86</span>
434 <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_s</span>
435 <span class="ruby-ivar">@full</span>
436 <span class="ruby-keyword kw">end</span>
437 </pre>
438 </div>
439 </div>
440 </div>
442 <div id="method-M000088" class="method-detail">
443 <a name="M000088"></a>
445 <div class="method-heading">
446 <a href="#M000088" class="method-signature">
447 <span class="method-name">update_ref</span><span class="method-args">(commit)</span>
448 </a>
449 </div>
451 <div class="method-description">
452 <p><a class="source-toggle" href="#"
453 onclick="toggleCode('M000088-source');return false;">[Source]</a></p>
454 <div class="method-source-code" id="M000088-source">
455 <pre>
456 <span class="ruby-comment cmt"># File lib/git/branch.rb, line 78</span>
457 <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">update_ref</span>(<span class="ruby-identifier">commit</span>)
458 <span class="ruby-ivar">@base</span>.<span class="ruby-identifier">lib</span>.<span class="ruby-identifier">update_ref</span>(<span class="ruby-ivar">@full</span>, <span class="ruby-identifier">commit</span>)
459 <span class="ruby-keyword kw">end</span>
460 </pre>
461 </div>
462 </div>
463 </div>
466 </div>
469 </div>
472 <div id="validator-badges">
473 <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
474 </div>
476 </body>
477 </html>