Autogenerated HTML docs for v1.7.7-325-g05f6ed
[git/jnareb-git.git] / git-show-ref.html
blob92c7eb78934dfbc8813bbf396841cff8ab5e3970
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
2 "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
4 <head>
5 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
6 <meta name="generator" content="AsciiDoc 8.5.2" />
7 <title>git-show-ref(1)</title>
8 <style type="text/css">
9 /* Debug borders */
10 p, li, dt, dd, div, pre, h1, h2, h3, h4, h5, h6 {
12 border: 1px solid red;
16 body {
17 margin: 1em 5% 1em 5%;
20 a {
21 color: blue;
22 text-decoration: underline;
24 a:visited {
25 color: fuchsia;
28 em {
29 font-style: italic;
30 color: navy;
33 strong {
34 font-weight: bold;
35 color: #083194;
38 tt {
39 color: navy;
42 h1, h2, h3, h4, h5, h6 {
43 color: #527bbd;
44 font-family: sans-serif;
45 margin-top: 1.2em;
46 margin-bottom: 0.5em;
47 line-height: 1.3;
50 h1, h2, h3 {
51 border-bottom: 2px solid silver;
53 h2 {
54 padding-top: 0.5em;
56 h3 {
57 float: left;
59 h3 + * {
60 clear: left;
63 div.sectionbody {
64 font-family: serif;
65 margin-left: 0;
68 hr {
69 border: 1px solid silver;
72 p {
73 margin-top: 0.5em;
74 margin-bottom: 0.5em;
77 ul, ol, li > p {
78 margin-top: 0;
81 pre {
82 padding: 0;
83 margin: 0;
86 span#author {
87 color: #527bbd;
88 font-family: sans-serif;
89 font-weight: bold;
90 font-size: 1.1em;
92 span#email {
94 span#revnumber, span#revdate, span#revremark {
95 font-family: sans-serif;
98 div#footer {
99 font-family: sans-serif;
100 font-size: small;
101 border-top: 2px solid silver;
102 padding-top: 0.5em;
103 margin-top: 4.0em;
105 div#footer-text {
106 float: left;
107 padding-bottom: 0.5em;
109 div#footer-badges {
110 float: right;
111 padding-bottom: 0.5em;
114 div#preamble {
115 margin-top: 1.5em;
116 margin-bottom: 1.5em;
118 div.tableblock, div.imageblock, div.exampleblock, div.verseblock,
119 div.quoteblock, div.literalblock, div.listingblock, div.sidebarblock,
120 div.admonitionblock {
121 margin-top: 1.0em;
122 margin-bottom: 1.5em;
124 div.admonitionblock {
125 margin-top: 2.0em;
126 margin-bottom: 2.0em;
127 margin-right: 10%;
128 color: #606060;
131 div.content { /* Block element content. */
132 padding: 0;
135 /* Block element titles. */
136 div.title, caption.title {
137 color: #527bbd;
138 font-family: sans-serif;
139 font-weight: bold;
140 text-align: left;
141 margin-top: 1.0em;
142 margin-bottom: 0.5em;
144 div.title + * {
145 margin-top: 0;
148 td div.title:first-child {
149 margin-top: 0.0em;
151 div.content div.title:first-child {
152 margin-top: 0.0em;
154 div.content + div.title {
155 margin-top: 0.0em;
158 div.sidebarblock > div.content {
159 background: #ffffee;
160 border: 1px solid silver;
161 padding: 0.5em;
164 div.listingblock > div.content {
165 border: 1px solid silver;
166 background: #f4f4f4;
167 padding: 0.5em;
170 div.quoteblock, div.verseblock {
171 padding-left: 1.0em;
172 margin-left: 1.0em;
173 margin-right: 10%;
174 border-left: 5px solid #dddddd;
175 color: #777777;
178 div.quoteblock > div.attribution {
179 padding-top: 0.5em;
180 text-align: right;
183 div.verseblock > div.content {
184 white-space: pre;
186 div.verseblock > div.attribution {
187 padding-top: 0.75em;
188 text-align: left;
190 /* DEPRECATED: Pre version 8.2.7 verse style literal block. */
191 div.verseblock + div.attribution {
192 text-align: left;
195 div.admonitionblock .icon {
196 vertical-align: top;
197 font-size: 1.1em;
198 font-weight: bold;
199 text-decoration: underline;
200 color: #527bbd;
201 padding-right: 0.5em;
203 div.admonitionblock td.content {
204 padding-left: 0.5em;
205 border-left: 3px solid #dddddd;
208 div.exampleblock > div.content {
209 border-left: 3px solid #dddddd;
210 padding-left: 0.5em;
213 div.imageblock div.content { padding-left: 0; }
214 span.image img { border-style: none; }
215 a.image:visited { color: white; }
217 dl {
218 margin-top: 0.8em;
219 margin-bottom: 0.8em;
221 dt {
222 margin-top: 0.5em;
223 margin-bottom: 0;
224 font-style: normal;
225 color: navy;
227 dd > *:first-child {
228 margin-top: 0.1em;
231 ul, ol {
232 list-style-position: outside;
234 ol.arabic {
235 list-style-type: decimal;
237 ol.loweralpha {
238 list-style-type: lower-alpha;
240 ol.upperalpha {
241 list-style-type: upper-alpha;
243 ol.lowerroman {
244 list-style-type: lower-roman;
246 ol.upperroman {
247 list-style-type: upper-roman;
250 div.compact ul, div.compact ol,
251 div.compact p, div.compact p,
252 div.compact div, div.compact div {
253 margin-top: 0.1em;
254 margin-bottom: 0.1em;
257 div.tableblock > table {
258 border: 3px solid #527bbd;
260 thead, p.table.header {
261 font-family: sans-serif;
262 font-weight: bold;
264 tfoot {
265 font-weight: bold;
267 td > div.verse {
268 white-space: pre;
270 p.table {
271 margin-top: 0;
273 /* Because the table frame attribute is overriden by CSS in most browsers. */
274 div.tableblock > table[frame="void"] {
275 border-style: none;
277 div.tableblock > table[frame="hsides"] {
278 border-left-style: none;
279 border-right-style: none;
281 div.tableblock > table[frame="vsides"] {
282 border-top-style: none;
283 border-bottom-style: none;
287 div.hdlist {
288 margin-top: 0.8em;
289 margin-bottom: 0.8em;
291 div.hdlist tr {
292 padding-bottom: 15px;
294 dt.hdlist1.strong, td.hdlist1.strong {
295 font-weight: bold;
297 td.hdlist1 {
298 vertical-align: top;
299 font-style: normal;
300 padding-right: 0.8em;
301 color: navy;
303 td.hdlist2 {
304 vertical-align: top;
306 div.hdlist.compact tr {
307 margin: 0;
308 padding-bottom: 0;
311 .comment {
312 background: yellow;
315 .footnote, .footnoteref {
316 font-size: 0.8em;
319 span.footnote, span.footnoteref {
320 vertical-align: super;
323 #footnotes {
324 margin: 20px 0 20px 0;
325 padding: 7px 0 0 0;
328 #footnotes div.footnote {
329 margin: 0 0 5px 0;
332 #footnotes hr {
333 border: none;
334 border-top: 1px solid silver;
335 height: 1px;
336 text-align: left;
337 margin-left: 0;
338 width: 20%;
339 min-width: 100px;
343 @media print {
344 div#footer-badges { display: none; }
347 div#toc {
348 margin-bottom: 2.5em;
351 div#toctitle {
352 color: #527bbd;
353 font-family: sans-serif;
354 font-size: 1.1em;
355 font-weight: bold;
356 margin-top: 1.0em;
357 margin-bottom: 0.1em;
360 div.toclevel1, div.toclevel2, div.toclevel3, div.toclevel4 {
361 margin-top: 0;
362 margin-bottom: 0;
364 div.toclevel2 {
365 margin-left: 2em;
366 font-size: 0.9em;
368 div.toclevel3 {
369 margin-left: 4em;
370 font-size: 0.9em;
372 div.toclevel4 {
373 margin-left: 6em;
374 font-size: 0.9em;
376 /* Overrides for manpage documents */
377 h1 {
378 padding-top: 0.5em;
379 padding-bottom: 0.5em;
380 border-top: 2px solid silver;
381 border-bottom: 2px solid silver;
383 h2 {
384 border-style: none;
386 div.sectionbody {
387 margin-left: 5%;
390 @media print {
391 div#toc { display: none; }
394 /* Workarounds for IE6's broken and incomplete CSS2. */
396 div.sidebar-content {
397 background: #ffffee;
398 border: 1px solid silver;
399 padding: 0.5em;
401 div.sidebar-title, div.image-title {
402 color: #527bbd;
403 font-family: sans-serif;
404 font-weight: bold;
405 margin-top: 0.0em;
406 margin-bottom: 0.5em;
409 div.listingblock div.content {
410 border: 1px solid silver;
411 background: #f4f4f4;
412 padding: 0.5em;
415 div.quoteblock-attribution {
416 padding-top: 0.5em;
417 text-align: right;
420 div.verseblock-content {
421 white-space: pre;
423 div.verseblock-attribution {
424 padding-top: 0.75em;
425 text-align: left;
428 div.exampleblock-content {
429 border-left: 3px solid #dddddd;
430 padding-left: 0.5em;
433 /* IE6 sets dynamically generated links as visited. */
434 div#toc a:visited { color: blue; }
435 </style>
436 <script type="text/javascript">
437 /*<![CDATA[*/
438 window.onload = function(){asciidoc.footnotes();}
439 var asciidoc = { // Namespace.
441 /////////////////////////////////////////////////////////////////////
442 // Table Of Contents generator
443 /////////////////////////////////////////////////////////////////////
445 /* Author: Mihai Bazon, September 2002
446 * http://students.infoiasi.ro/~mishoo
448 * Table Of Content generator
449 * Version: 0.4
451 * Feel free to use this script under the terms of the GNU General Public
452 * License, as long as you do not remove or alter this notice.
455 /* modified by Troy D. Hanson, September 2006. License: GPL */
456 /* modified by Stuart Rackham, 2006, 2009. License: GPL */
458 // toclevels = 1..4.
459 toc: function (toclevels) {
461 function getText(el) {
462 var text = "";
463 for (var i = el.firstChild; i != null; i = i.nextSibling) {
464 if (i.nodeType == 3 /* Node.TEXT_NODE */) // IE doesn't speak constants.
465 text += i.data;
466 else if (i.firstChild != null)
467 text += getText(i);
469 return text;
472 function TocEntry(el, text, toclevel) {
473 this.element = el;
474 this.text = text;
475 this.toclevel = toclevel;
478 function tocEntries(el, toclevels) {
479 var result = new Array;
480 var re = new RegExp('[hH]([2-'+(toclevels+1)+'])');
481 // Function that scans the DOM tree for header elements (the DOM2
482 // nodeIterator API would be a better technique but not supported by all
483 // browsers).
484 var iterate = function (el) {
485 for (var i = el.firstChild; i != null; i = i.nextSibling) {
486 if (i.nodeType == 1 /* Node.ELEMENT_NODE */) {
487 var mo = re.exec(i.tagName);
488 if (mo && (i.getAttribute("class") || i.getAttribute("className")) != "float") {
489 result[result.length] = new TocEntry(i, getText(i), mo[1]-1);
491 iterate(i);
495 iterate(el);
496 return result;
499 var toc = document.getElementById("toc");
500 var entries = tocEntries(document.getElementById("content"), toclevels);
501 for (var i = 0; i < entries.length; ++i) {
502 var entry = entries[i];
503 if (entry.element.id == "")
504 entry.element.id = "_toc_" + i;
505 var a = document.createElement("a");
506 a.href = "#" + entry.element.id;
507 a.appendChild(document.createTextNode(entry.text));
508 var div = document.createElement("div");
509 div.appendChild(a);
510 div.className = "toclevel" + entry.toclevel;
511 toc.appendChild(div);
513 if (entries.length == 0)
514 toc.parentNode.removeChild(toc);
518 /////////////////////////////////////////////////////////////////////
519 // Footnotes generator
520 /////////////////////////////////////////////////////////////////////
522 /* Based on footnote generation code from:
523 * http://www.brandspankingnew.net/archive/2005/07/format_footnote.html
526 footnotes: function () {
527 var cont = document.getElementById("content");
528 var noteholder = document.getElementById("footnotes");
529 var spans = cont.getElementsByTagName("span");
530 var refs = {};
531 var n = 0;
532 for (i=0; i<spans.length; i++) {
533 if (spans[i].className == "footnote") {
534 n++;
535 // Use [\s\S] in place of . so multi-line matches work.
536 // Because JavaScript has no s (dotall) regex flag.
537 note = spans[i].innerHTML.match(/\s*\[([\s\S]*)]\s*/)[1];
538 noteholder.innerHTML +=
539 "<div class='footnote' id='_footnote_" + n + "'>" +
540 "<a href='#_footnoteref_" + n + "' title='Return to text'>" +
541 n + "</a>. " + note + "</div>";
542 spans[i].innerHTML =
543 "[<a id='_footnoteref_" + n + "' href='#_footnote_" + n +
544 "' title='View footnote' class='footnote'>" + n + "</a>]";
545 var id =spans[i].getAttribute("id");
546 if (id != null) refs["#"+id] = n;
549 if (n == 0)
550 noteholder.parentNode.removeChild(noteholder);
551 else {
552 // Process footnoterefs.
553 for (i=0; i<spans.length; i++) {
554 if (spans[i].className == "footnoteref") {
555 var href = spans[i].getElementsByTagName("a")[0].getAttribute("href");
556 href = href.match(/#.*/)[0]; // Because IE return full URL.
557 n = refs[href];
558 spans[i].innerHTML =
559 "[<a href='#_footnote_" + n +
560 "' title='View footnote' class='footnote'>" + n + "</a>]";
567 /*]]>*/
568 </script>
569 </head>
570 <body>
571 <div id="header">
572 <h1>
573 git-show-ref(1) Manual Page
574 </h1>
575 <h2>NAME</h2>
576 <div class="sectionbody">
577 <p>git-show-ref -
578 List references in a local repository
579 </p>
580 </div>
581 </div>
582 <div id="content">
583 <h2 id="_synopsis">SYNOPSIS</h2>
584 <div class="sectionbody">
585 <div class="verseblock">
586 <div class="verseblock-content"><em>git show-ref</em> [-q|--quiet] [--verify] [--head] [-d|--dereference]
587 [-s|--hash[=&lt;n&gt;]] [--abbrev[=&lt;n&gt;]] [--tags]
588 [--heads] [--] [&lt;pattern&gt;&#8230;]
589 <em>git show-ref</em> --exclude-existing[=&lt;pattern&gt;] &lt; ref-list</div>
590 <div class="verseblock-attribution">
591 </div></div>
592 </div>
593 <h2 id="_description">DESCRIPTION</h2>
594 <div class="sectionbody">
595 <div class="paragraph"><p>Displays references available in a local repository along with the associated
596 commit IDs. Results can be filtered using a pattern and tags can be
597 dereferenced into object IDs. Additionally, it can be used to test whether a
598 particular ref exists.</p></div>
599 <div class="paragraph"><p>The --exclude-existing form is a filter that does the inverse, it shows the
600 refs from stdin that don&#8217;t exist in the local repository.</p></div>
601 <div class="paragraph"><p>Use of this utility is encouraged in favor of directly accessing files under
602 the <tt>.git</tt> directory.</p></div>
603 </div>
604 <h2 id="_options">OPTIONS</h2>
605 <div class="sectionbody">
606 <div class="dlist"><dl>
607 <dt class="hdlist1">
608 --head
609 </dt>
610 <dd>
612 Show the HEAD reference.
613 </p>
614 </dd>
615 <dt class="hdlist1">
616 --tags
617 </dt>
618 <dt class="hdlist1">
619 --heads
620 </dt>
621 <dd>
623 Limit to only "refs/heads" and "refs/tags", respectively. These
624 options are not mutually exclusive; when given both, references stored
625 in "refs/heads" and "refs/tags" are displayed.
626 </p>
627 </dd>
628 <dt class="hdlist1">
630 </dt>
631 <dt class="hdlist1">
632 --dereference
633 </dt>
634 <dd>
636 Dereference tags into object IDs as well. They will be shown with "^{}"
637 appended.
638 </p>
639 </dd>
640 <dt class="hdlist1">
642 </dt>
643 <dt class="hdlist1">
644 --hash[=&lt;n&gt;]
645 </dt>
646 <dd>
648 Only show the SHA1 hash, not the reference name. When combined with
649 --dereference the dereferenced tag will still be shown after the SHA1.
650 </p>
651 </dd>
652 <dt class="hdlist1">
653 --verify
654 </dt>
655 <dd>
657 Enable stricter reference checking by requiring an exact ref path.
658 Aside from returning an error code of 1, it will also print an error
659 message if <em>--quiet</em> was not specified.
660 </p>
661 </dd>
662 <dt class="hdlist1">
663 --abbrev[=&lt;n&gt;]
664 </dt>
665 <dd>
667 Abbreviate the object name. When using <tt>--hash</tt>, you do
668 not have to say <tt>--hash --abbrev</tt>; <tt>--hash=n</tt> would do.
669 </p>
670 </dd>
671 <dt class="hdlist1">
673 </dt>
674 <dt class="hdlist1">
675 --quiet
676 </dt>
677 <dd>
679 Do not print any results to stdout. When combined with <em>--verify</em> this
680 can be used to silently check if a reference exists.
681 </p>
682 </dd>
683 <dt class="hdlist1">
684 --exclude-existing[=&lt;pattern&gt;]
685 </dt>
686 <dd>
688 Make <em>git show-ref</em> act as a filter that reads refs from stdin of the
689 form "<sup>(?:&lt;anything&gt;\s)?&lt;refname&gt;(?:&#92;&#94;{})?$"
690 and performs the following actions on each:
691 (1) strip "</sup>{}" at the end of line if any;
692 (2) ignore if pattern is provided and does not head-match refname;
693 (3) warn if refname is not a well-formed refname and skip;
694 (4) ignore if refname is a ref that exists in the local repository;
695 (5) otherwise output the line.
696 </p>
697 </dd>
698 <dt class="hdlist1">
699 &lt;pattern&gt;&#8230;
700 </dt>
701 <dd>
703 Show references matching one or more patterns. Patterns are matched from
704 the end of the full name, and only complete parts are matched, e.g.
705 <em>master</em> matches <em>refs/heads/master</em>, <em>refs/remotes/origin/master</em>,
706 <em>refs/tags/jedi/master</em> but not <em>refs/heads/mymaster</em> nor
707 <em>refs/remotes/master/jedi</em>.
708 </p>
709 </dd>
710 </dl></div>
711 </div>
712 <h2 id="_output">OUTPUT</h2>
713 <div class="sectionbody">
714 <div class="paragraph"><p>The output is in the format: <em>&lt;SHA-1 ID&gt;</em> <em>&lt;space&gt;</em> <em>&lt;reference name&gt;</em>.</p></div>
715 <div class="listingblock">
716 <div class="content">
717 <pre><tt>$ git show-ref --head --dereference
718 832e76a9899f560a90ffd62ae2ce83bbeff58f54 HEAD
719 832e76a9899f560a90ffd62ae2ce83bbeff58f54 refs/heads/master
720 832e76a9899f560a90ffd62ae2ce83bbeff58f54 refs/heads/origin
721 3521017556c5de4159da4615a39fa4d5d2c279b5 refs/tags/v0.99.9c
722 6ddc0964034342519a87fe013781abf31c6db6ad refs/tags/v0.99.9c^{}
723 055e4ae3ae6eb344cbabf2a5256a49ea66040131 refs/tags/v1.0rc4
724 423325a2d24638ddcc82ce47be5e40be550f4507 refs/tags/v1.0rc4^{}
725 ...</tt></pre>
726 </div></div>
727 <div class="paragraph"><p>When using --hash (and not --dereference) the output format is: <em>&lt;SHA-1 ID&gt;</em></p></div>
728 <div class="listingblock">
729 <div class="content">
730 <pre><tt>$ git show-ref --heads --hash
731 2e3ba0114a1f52b47df29743d6915d056be13278
732 185008ae97960c8d551adcd9e23565194651b5d1
733 03adf42c988195b50e1a1935ba5fcbc39b2b029b
734 ...</tt></pre>
735 </div></div>
736 </div>
737 <h2 id="_example">EXAMPLE</h2>
738 <div class="sectionbody">
739 <div class="paragraph"><p>To show all references called "master", whether tags or heads or anything
740 else, and regardless of how deep in the reference naming hierarchy they are,
741 use:</p></div>
742 <div class="listingblock">
743 <div class="content">
744 <pre><tt> git show-ref master</tt></pre>
745 </div></div>
746 <div class="paragraph"><p>This will show "refs/heads/master" but also "refs/remote/other-repo/master",
747 if such references exists.</p></div>
748 <div class="paragraph"><p>When using the <em>--verify</em> flag, the command requires an exact path:</p></div>
749 <div class="listingblock">
750 <div class="content">
751 <pre><tt> git show-ref --verify refs/heads/master</tt></pre>
752 </div></div>
753 <div class="paragraph"><p>will only match the exact branch called "master".</p></div>
754 <div class="paragraph"><p>If nothing matches, <em>git show-ref</em> will return an error code of 1,
755 and in the case of verification, it will show an error message.</p></div>
756 <div class="paragraph"><p>For scripting, you can ask it to be quiet with the "--quiet" flag, which
757 allows you to do things like</p></div>
758 <div class="listingblock">
759 <div class="content">
760 <pre><tt> git show-ref --quiet --verify -- "refs/heads/$headname" ||
761 echo "$headname is not a valid branch"</tt></pre>
762 </div></div>
763 <div class="paragraph"><p>to check whether a particular branch exists or not (notice how we don&#8217;t
764 actually want to show any results, and we want to use the full refname for it
765 in order to not trigger the problem with ambiguous partial matches).</p></div>
766 <div class="paragraph"><p>To show only tags, or only proper branch heads, use "--tags" and/or "--heads"
767 respectively (using both means that it shows tags and heads, but not other
768 random references under the refs/ subdirectory).</p></div>
769 <div class="paragraph"><p>To do automatic tag object dereferencing, use the "-d" or "--dereference"
770 flag, so you can do</p></div>
771 <div class="listingblock">
772 <div class="content">
773 <pre><tt> git show-ref --tags --dereference</tt></pre>
774 </div></div>
775 <div class="paragraph"><p>to get a listing of all tags together with what they dereference.</p></div>
776 </div>
777 <h2 id="_files">FILES</h2>
778 <div class="sectionbody">
779 <div class="paragraph"><p><tt>.git/refs/*</tt>, <tt>.git/packed-refs</tt></p></div>
780 </div>
781 <h2 id="_see_also">SEE ALSO</h2>
782 <div class="sectionbody">
783 <div class="paragraph"><p><a href="git-ls-remote.html">git-ls-remote(1)</a>,
784 <a href="git-update-ref.html">git-update-ref(1)</a>,
785 <a href="gitrepository-layout.html">gitrepository-layout(5)</a></p></div>
786 </div>
787 <h2 id="_git">GIT</h2>
788 <div class="sectionbody">
789 <div class="paragraph"><p>Part of the <a href="git.html">git(1)</a> suite</p></div>
790 </div>
791 </div>
792 <div id="footnotes"><hr /></div>
793 <div id="footer">
794 <div id="footer-text">
795 Last updated 2011-09-21 23:01:14 PDT
796 </div>
797 </div>
798 </body>
799 </html>