expect HEAD to be a symbolic link.
core.logAllRefUpdates::
- If true, `git-update-ref` will append a line to
- "$GIT_DIR/logs/<ref>" listing the new SHA1 and the date/time
- of the update. If the file does not exist it will be
- created automatically. This information can be used to
- determine what commit was the tip of a branch "2 days ago".
- This value is false by default (no logging).
+ Updates to a ref <ref> is logged to the file
+ "$GIT_DIR/logs/<ref>", by appending the new and old
+ SHA1, the date/time and the reason of the update, but
+ only when the file exists. If this configuration
+ variable is set to true, missing "$GIT_DIR/logs/<ref>"
+ file is automatically created for branch heads.
+
+ This information can be used to determine what commit
+ was the tip of a branch "2 days ago". This value is
+ false by default (no automated creation of log files).
core.repositoryFormatVersion::
Internal variable identifying the repository format and layout
<base-name> to determine the name of the created file.\r
When this option is used, the two files are written in\r
<base-name>-<SHA1>.{pack,idx} files. <SHA1> is a hash\r
- of object names (currently in random order so it does\r
- not have any useful meaning) to make the resulting\r
- filename reasonably unique, and written to the standard\r
+ of the sorted object names to make the resulting filename\r
+ based on the pack content, and written to the standard\r
output of the command.\r
</p>\r
</dd>\r
</div>\r
<div id="footer">\r
<div id="footer-text">\r
-Last updated 23-Oct-2006 07:18:39 UTC\r
+Last updated 02-Nov-2006 00:22:38 UTC\r
</div>\r
</div>\r
</body>\r
<base-name> to determine the name of the created file.
When this option is used, the two files are written in
<base-name>-<SHA1>.{pack,idx} files. <SHA1> is a hash
- of object names (currently in random order so it does
- not have any useful meaning) to make the resulting
- filename reasonably unique, and written to the standard
+ of the sorted object names to make the resulting filename
+ based on the pack content, and written to the standard
output of the command.
--stdout::
</dt>\r
<dd>\r
<p>\r
- If true, <tt>git-update-ref</tt> will append a line to\r
- "$GIT_DIR/logs/<ref>" listing the new SHA1 and the date/time\r
- of the update. If the file does not exist it will be\r
- created automatically. This information can be used to\r
- determine what commit was the tip of a branch "2 days ago".\r
- This value is false by default (no logging).\r
+ Updates to a ref <ref> is logged to the file\r
+ "$GIT_DIR/logs/<ref>", by appending the new and old\r
+ SHA1, the date/time and the reason of the update, but\r
+ only when the file exists. If this configuration\r
+ variable is set to true, missing "$GIT_DIR/logs/<ref>"\r
+ file is automatically created for branch heads.\r
</p>\r
+<div class="literalblock">\r
+<div class="content">\r
+<pre><tt>This information can be used to determine what commit\r
+was the tip of a branch "2 days ago". This value is\r
+false by default (no automated creation of log files).</tt></pre>\r
+</div></div>\r
</dd>\r
<dt>\r
core.repositoryFormatVersion\r
</div>\r
<div id="footer">\r
<div id="footer-text">\r
-Last updated 24-Oct-2006 05:44:00 UTC\r
+Last updated 02-Nov-2006 00:22:39 UTC\r
</div>\r
</div>\r
</body>\r
--- /dev/null
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"\r
+ "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">\r
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">\r
+<head>\r
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />\r
+<meta name="generator" content="AsciiDoc 7.0.2" />\r
+<style type="text/css">\r
+/* Debug borders */\r
+p, li, dt, dd, div, pre, h1, h2, h3, h4, h5, h6 {\r
+/*\r
+ border: 1px solid red;\r
+*/\r
+}\r
+\r
+body {\r
+ margin: 1em 5% 1em 5%;\r
+}\r
+\r
+a { color: blue; }\r
+a:visited { color: fuchsia; }\r
+\r
+em {\r
+ font-style: italic;\r
+}\r
+\r
+strong {\r
+ font-weight: bold;\r
+}\r
+\r
+tt {\r
+ color: navy;\r
+}\r
+\r
+h1, h2, h3, h4, h5, h6 {\r
+ color: #527bbd;\r
+ font-family: sans-serif;\r
+ margin-top: 1.2em;\r
+ margin-bottom: 0.5em;\r
+ line-height: 1.3;\r
+}\r
+\r
+h1 {\r
+ border-bottom: 2px solid silver;\r
+}\r
+h2 {\r
+ border-bottom: 2px solid silver;\r
+ padding-top: 0.5em;\r
+}\r
+\r
+div.sectionbody {\r
+ font-family: serif;\r
+ margin-left: 0;\r
+}\r
+\r
+hr {\r
+ border: 1px solid silver;\r
+}\r
+\r
+p {\r
+ margin-top: 0.5em;\r
+ margin-bottom: 0.5em;\r
+}\r
+\r
+pre {\r
+ padding: 0;\r
+ margin: 0;\r
+}\r
+\r
+span#author {\r
+ color: #527bbd;\r
+ font-family: sans-serif;\r
+ font-weight: bold;\r
+ font-size: 1.2em;\r
+}\r
+span#email {\r
+}\r
+span#revision {\r
+ font-family: sans-serif;\r
+}\r
+\r
+div#footer {\r
+ font-family: sans-serif;\r
+ font-size: small;\r
+ border-top: 2px solid silver;\r
+ padding-top: 0.5em;\r
+ margin-top: 4.0em;\r
+}\r
+div#footer-text {\r
+ float: left;\r
+ padding-bottom: 0.5em;\r
+}\r
+div#footer-badges {\r
+ float: right;\r
+ padding-bottom: 0.5em;\r
+}\r
+\r
+div#preamble,\r
+div.tableblock, div.imageblock, div.exampleblock, div.verseblock,\r
+div.quoteblock, div.literalblock, div.listingblock, div.sidebarblock,\r
+div.admonitionblock {\r
+ margin-right: 10%;\r
+ margin-top: 1.5em;\r
+ margin-bottom: 1.5em;\r
+}\r
+div.admonitionblock {\r
+ margin-top: 2.5em;\r
+ margin-bottom: 2.5em;\r
+}\r
+\r
+div.content { /* Block element content. */\r
+ padding: 0;\r
+}\r
+\r
+/* Block element titles. */\r
+div.title, caption.title {\r
+ font-family: sans-serif;\r
+ font-weight: bold;\r
+ text-align: left;\r
+ margin-top: 1.0em;\r
+ margin-bottom: 0.5em;\r
+}\r
+div.title + * {\r
+ margin-top: 0;\r
+}\r
+\r
+td div.title:first-child {\r
+ margin-top: 0.0em;\r
+}\r
+div.content div.title:first-child {\r
+ margin-top: 0.0em;\r
+}\r
+div.content + div.title {\r
+ margin-top: 0.0em;\r
+}\r
+\r
+div.sidebarblock > div.content {\r
+ background: #ffffee;\r
+ border: 1px solid silver;\r
+ padding: 0.5em;\r
+}\r
+\r
+div.listingblock > div.content {\r
+ border: 1px solid silver;\r
+ background: #f4f4f4;\r
+ padding: 0.5em;\r
+}\r
+\r
+div.quoteblock > div.content {\r
+ padding-left: 2.0em;\r
+}\r
+div.quoteblock .attribution {\r
+ text-align: right;\r
+}\r
+\r
+div.admonitionblock .icon {\r
+ vertical-align: top;\r
+ font-size: 1.1em;\r
+ font-weight: bold;\r
+ text-decoration: underline;\r
+ color: #527bbd;\r
+ padding-right: 0.5em;\r
+}\r
+div.admonitionblock td.content {\r
+ padding-left: 0.5em;\r
+ border-left: 2px solid silver;\r
+}\r
+\r
+div.exampleblock > div.content {\r
+ border-left: 2px solid silver;\r
+ padding: 0.5em;\r
+}\r
+\r
+div.verseblock div.content {\r
+ white-space: pre;\r
+}\r
+\r
+div.imageblock div.content { padding-left: 0; }\r
+div.imageblock img { border: 1px solid silver; }\r
+span.image img { border-style: none; }\r
+\r
+dl {\r
+ margin-top: 0.8em;\r
+ margin-bottom: 0.8em;\r
+}\r
+dt {\r
+ margin-top: 0.5em;\r
+ margin-bottom: 0;\r
+ font-style: italic;\r
+}\r
+dd > *:first-child {\r
+ margin-top: 0;\r
+}\r
+\r
+ul, ol {\r
+ list-style-position: outside;\r
+}\r
+ol.olist2 {\r
+ list-style-type: lower-alpha;\r
+}\r
+\r
+div.tableblock > table {\r
+ border-color: #527bbd;\r
+ border-width: 3px;\r
+}\r
+thead {\r
+ font-family: sans-serif;\r
+ font-weight: bold;\r
+}\r
+tfoot {\r
+ font-weight: bold;\r
+}\r
+\r
+div.hlist {\r
+ margin-top: 0.8em;\r
+ margin-bottom: 0.8em;\r
+}\r
+td.hlist1 {\r
+ vertical-align: top;\r
+ font-style: italic;\r
+ padding-right: 0.8em;\r
+}\r
+td.hlist2 {\r
+ vertical-align: top;\r
+}\r
+\r
+@media print {\r
+ div#footer-badges { display: none; }\r
+}\r
+include::./stylesheets/xhtml11-manpage.css[]\r
+/* Workarounds for IE6's broken and incomplete CSS2. */\r
+\r
+div.sidebar-content {\r
+ background: #ffffee;\r
+ border: 1px solid silver;\r
+ padding: 0.5em;\r
+}\r
+div.sidebar-title, div.image-title {\r
+ font-family: sans-serif;\r
+ font-weight: bold;\r
+ margin-top: 0.0em;\r
+ margin-bottom: 0.5em;\r
+}\r
+\r
+div.listingblock div.content {\r
+ border: 1px solid silver;\r
+ background: #f4f4f4;\r
+ padding: 0.5em;\r
+}\r
+\r
+div.quoteblock-content {\r
+ padding-left: 2.0em;\r
+}\r
+\r
+div.exampleblock-content {\r
+ border-left: 2px solid silver;\r
+ padding-left: 0.5em;\r
+}\r
+</style>\r
+<title>git-show-ref(1)</title>\r
+</head>\r
+<body>\r
+<div id="header">\r
+<h1>\r
+git-show-ref(1) Manual Page\r
+</h1>\r
+<h2>NAME</h2>\r
+<div class="sectionbody">\r
+<p>git-show-ref -\r
+ List references in a local repository\r
+</p>\r
+</div>\r
+</div>\r
+<h2>SYNOPSIS</h2>\r
+<div class="sectionbody">\r
+<div class="verseblock">\r
+<div class="content"><em>git-show-ref</em> [-q|--quiet] [--verify] [-h|--head] [-d|--dereference]\r
+ [-s|--hash] [--abbrev] [--tags] [--heads] [--] <pattern>…</div></div>\r
+</div>\r
+<h2>DESCRIPTION</h2>\r
+<div class="sectionbody">\r
+<p>Displays references available in a local repository along with the associated\r
+commit IDs. Results can be filtered using a pattern and tags can be\r
+dereferenced into object IDs. Additionally, it can be used to test whether a\r
+particular ref exists.</p>\r
+<p>Use of this utility is encouraged in favor of directly accessing files under\r
+in the <tt>.git</tt> directory.</p>\r
+</div>\r
+<h2>OPTIONS</h2>\r
+<div class="sectionbody">\r
+<dl>\r
+<dt>\r
+-h, --head\r
+</dt>\r
+<dd>\r
+<p>\r
+ Show the HEAD reference.\r
+</p>\r
+</dd>\r
+<dt>\r
+--tags, --heads\r
+</dt>\r
+<dd>\r
+<p>\r
+ Limit to only "refs/heads" and "refs/tags", respectively. These\r
+ options are not mutually exclusive; when given both, references stored\r
+ in "refs/heads" and "refs/tags" are displayed.\r
+</p>\r
+</dd>\r
+<dt>\r
+-d, --dereference\r
+</dt>\r
+<dd>\r
+<p>\r
+ Dereference tags into object IDs as well. They will be shown with "^{}"\r
+ appended.\r
+</p>\r
+</dd>\r
+<dt>\r
+-s, --hash\r
+</dt>\r
+<dd>\r
+<p>\r
+ Only show the SHA1 hash, not the reference name. When also using\r
+ --dereference the dereferenced tag will still be shown after the SHA1.\r
+</p>\r
+</dd>\r
+<dt>\r
+--verify\r
+</dt>\r
+<dd>\r
+<p>\r
+ Enable stricter reference checking by requiring an exact ref path.\r
+ Aside from returning an error code of 1, it will also print an error\r
+ message if <em>--quiet</em> was not specified.\r
+</p>\r
+</dd>\r
+<dt>\r
+--abbrev, --abbrev=len\r
+</dt>\r
+<dd>\r
+<p>\r
+ Abbreviate the object name. When using <tt>--hash</tt>, you do\r
+ not have to say <tt>--hash --abbrev</tt>; <tt>--hash=len</tt> would do.\r
+</p>\r
+</dd>\r
+<dt>\r
+-q, --quiet\r
+</dt>\r
+<dd>\r
+<p>\r
+ Do not print any results to stdout. When combined with <em>--verify</em> this\r
+ can be used to silently check if a reference exists.\r
+</p>\r
+</dd>\r
+<dt>\r
+<pattern>\r
+</dt>\r
+<dd>\r
+<p>\r
+ Show references matching one or more patterns.\r
+</p>\r
+</dd>\r
+</dl>\r
+</div>\r
+<h2>OUTPUT</h2>\r
+<div class="sectionbody">\r
+<p>The output is in the format: <em><SHA-1 ID></em> <em><space></em> <em><reference name></em>.</p>\r
+<div class="listingblock">\r
+<div class="content">\r
+<pre><tt>$ git show-ref --head --dereference\r
+832e76a9899f560a90ffd62ae2ce83bbeff58f54 HEAD\r
+832e76a9899f560a90ffd62ae2ce83bbeff58f54 refs/heads/master\r
+832e76a9899f560a90ffd62ae2ce83bbeff58f54 refs/heads/origin\r
+3521017556c5de4159da4615a39fa4d5d2c279b5 refs/tags/v0.99.9c\r
+6ddc0964034342519a87fe013781abf31c6db6ad refs/tags/v0.99.9c^{}\r
+055e4ae3ae6eb344cbabf2a5256a49ea66040131 refs/tags/v1.0rc4\r
+423325a2d24638ddcc82ce47be5e40be550f4507 refs/tags/v1.0rc4^{}\r
+...</tt></pre>\r
+</div></div>\r
+<p>When using --hash (and not --dereference) the output format is: <em><SHA-1 ID></em></p>\r
+<div class="listingblock">\r
+<div class="content">\r
+<pre><tt>$ git show-ref --heads --hash\r
+2e3ba0114a1f52b47df29743d6915d056be13278\r
+185008ae97960c8d551adcd9e23565194651b5d1\r
+03adf42c988195b50e1a1935ba5fcbc39b2b029b\r
+...</tt></pre>\r
+</div></div>\r
+</div>\r
+<h2>EXAMPLE</h2>\r
+<div class="sectionbody">\r
+<p>To show all references called "master", whether tags or heads or anything\r
+else, and regardless of how deep in the reference naming hierarchy they are,\r
+use:</p>\r
+<div class="listingblock">\r
+<div class="content">\r
+<pre><tt> git show-ref master</tt></pre>\r
+</div></div>\r
+<p>This will show "refs/heads/master" but also "refs/remote/other-repo/master",\r
+if such references exists.</p>\r
+<p>When using the <em>--verify</em> flag, the command requires an exact path:</p>\r
+<div class="listingblock">\r
+<div class="content">\r
+<pre><tt> git show-ref --verify refs/heads/master</tt></pre>\r
+</div></div>\r
+<p>will only match the exact branch called "master".</p>\r
+<p>If nothing matches, <a href="git-show-ref.html">git-show-ref(1)</a> will return an error code of 1,\r
+and in the case of verification, it will show an error message.</p>\r
+<p>For scripting, you can ask it to be quiet with the "--quiet" flag, which\r
+allows you to do things like</p>\r
+<div class="listingblock">\r
+<div class="content">\r
+<pre><tt> git-show-ref --quiet --verify -- "refs/heads/$headname" ||\r
+ echo "$headname is not a valid branch"</tt></pre>\r
+</div></div>\r
+<p>to check whether a particular branch exists or not (notice how we don't\r
+actually want to show any results, and we want to use the full refname for it\r
+in order to not trigger the problem with ambiguous partial matches).</p>\r
+<p>To show only tags, or only proper branch heads, use "--tags" and/or "--heads"\r
+respectively (using both means that it shows tags and heads, but not other\r
+random references under the refs/ subdirectory).</p>\r
+<p>To do automatic tag object dereferencing, use the "-d" or "--dereference"\r
+flag, so you can do</p>\r
+<div class="listingblock">\r
+<div class="content">\r
+<pre><tt> git show-ref --tags --dereference</tt></pre>\r
+</div></div>\r
+<p>to get a listing of all tags together with what they dereference.</p>\r
+</div>\r
+<h2>SEE ALSO</h2>\r
+<div class="sectionbody">\r
+<p><a href="git-ls-remote.html">git-ls-remote(1)</a>, <a href="git-peek-remote.html">git-peek-remote(1)</a></p>\r
+</div>\r
+<h2>AUTHORS</h2>\r
+<div class="sectionbody">\r
+<p>Written by Linus Torvalds <torvalds@osdl.org>.\r
+Man page by Jonas Fonseca <fonseca@diku.dk>.</p>\r
+</div>\r
+<h2>GIT</h2>\r
+<div class="sectionbody">\r
+<p>Part of the <a href="git.html">git(7)</a> suite</p>\r
+</div>\r
+<div id="footer">\r
+<div id="footer-text">\r
+Last updated 02-Nov-2006 00:22:40 UTC\r
+</div>\r
+</div>\r
+</body>\r
+</html>\r
--- /dev/null
+git-show-ref(1)
+===============
+
+NAME
+----
+git-show-ref - List references in a local repository
+
+SYNOPSIS
+--------
+[verse]
+'git-show-ref' [-q|--quiet] [--verify] [-h|--head] [-d|--dereference]
+ [-s|--hash] [--abbrev] [--tags] [--heads] [--] <pattern>...
+
+DESCRIPTION
+-----------
+
+Displays references available in a local repository along with the associated
+commit IDs. Results can be filtered using a pattern and tags can be
+dereferenced into object IDs. Additionally, it can be used to test whether a
+particular ref exists.
+
+Use of this utility is encouraged in favor of directly accessing files under
+in the `.git` directory.
+
+OPTIONS
+-------
+
+-h, --head::
+
+ Show the HEAD reference.
+
+--tags, --heads::
+
+ Limit to only "refs/heads" and "refs/tags", respectively. These
+ options are not mutually exclusive; when given both, references stored
+ in "refs/heads" and "refs/tags" are displayed.
+
+-d, --dereference::
+
+ Dereference tags into object IDs as well. They will be shown with "^{}"
+ appended.
+
+-s, --hash::
+
+ Only show the SHA1 hash, not the reference name. When also using
+ --dereference the dereferenced tag will still be shown after the SHA1.
+
+--verify::
+
+ Enable stricter reference checking by requiring an exact ref path.
+ Aside from returning an error code of 1, it will also print an error
+ message if '--quiet' was not specified.
+
+--abbrev, --abbrev=len::
+
+ Abbreviate the object name. When using `--hash`, you do
+ not have to say `--hash --abbrev`; `--hash=len` would do.
+
+-q, --quiet::
+
+ Do not print any results to stdout. When combined with '--verify' this
+ can be used to silently check if a reference exists.
+
+<pattern>::
+
+ Show references matching one or more patterns.
+
+OUTPUT
+------
+
+The output is in the format: '<SHA-1 ID>' '<space>' '<reference name>'.
+
+-----------------------------------------------------------------------------
+$ git show-ref --head --dereference
+832e76a9899f560a90ffd62ae2ce83bbeff58f54 HEAD
+832e76a9899f560a90ffd62ae2ce83bbeff58f54 refs/heads/master
+832e76a9899f560a90ffd62ae2ce83bbeff58f54 refs/heads/origin
+3521017556c5de4159da4615a39fa4d5d2c279b5 refs/tags/v0.99.9c
+6ddc0964034342519a87fe013781abf31c6db6ad refs/tags/v0.99.9c^{}
+055e4ae3ae6eb344cbabf2a5256a49ea66040131 refs/tags/v1.0rc4
+423325a2d24638ddcc82ce47be5e40be550f4507 refs/tags/v1.0rc4^{}
+...
+-----------------------------------------------------------------------------
+
+When using --hash (and not --dereference) the output format is: '<SHA-1 ID>'
+
+-----------------------------------------------------------------------------
+$ git show-ref --heads --hash
+2e3ba0114a1f52b47df29743d6915d056be13278
+185008ae97960c8d551adcd9e23565194651b5d1
+03adf42c988195b50e1a1935ba5fcbc39b2b029b
+...
+-----------------------------------------------------------------------------
+
+EXAMPLE
+-------
+
+To show all references called "master", whether tags or heads or anything
+else, and regardless of how deep in the reference naming hierarchy they are,
+use:
+
+-----------------------------------------------------------------------------
+ git show-ref master
+-----------------------------------------------------------------------------
+
+This will show "refs/heads/master" but also "refs/remote/other-repo/master",
+if such references exists.
+
+When using the '--verify' flag, the command requires an exact path:
+
+-----------------------------------------------------------------------------
+ git show-ref --verify refs/heads/master
+-----------------------------------------------------------------------------
+
+will only match the exact branch called "master".
+
+If nothing matches, gitlink:git-show-ref[1] will return an error code of 1,
+and in the case of verification, it will show an error message.
+
+For scripting, you can ask it to be quiet with the "--quiet" flag, which
+allows you to do things like
+
+-----------------------------------------------------------------------------
+ git-show-ref --quiet --verify -- "refs/heads/$headname" ||
+ echo "$headname is not a valid branch"
+-----------------------------------------------------------------------------
+
+to check whether a particular branch exists or not (notice how we don't
+actually want to show any results, and we want to use the full refname for it
+in order to not trigger the problem with ambiguous partial matches).
+
+To show only tags, or only proper branch heads, use "--tags" and/or "--heads"
+respectively (using both means that it shows tags and heads, but not other
+random references under the refs/ subdirectory).
+
+To do automatic tag object dereferencing, use the "-d" or "--dereference"
+flag, so you can do
+
+-----------------------------------------------------------------------------
+ git show-ref --tags --dereference
+-----------------------------------------------------------------------------
+
+to get a listing of all tags together with what they dereference.
+
+SEE ALSO
+--------
+gitlink:git-ls-remote[1], gitlink:git-peek-remote[1]
+
+AUTHORS
+-------
+Written by Linus Torvalds <torvalds@osdl.org>.
+Man page by Jonas Fonseca <fonseca@diku.dk>.
+
+GIT
+---
+Part of the gitlink:git[7] suite
</div>\r
<h2>SYNOPSIS</h2>\r
<div class="sectionbody">\r
-<p><em>git-update-ref</em> [-m <reason>] <ref> <newvalue> [<oldvalue>]</p>\r
+<p><em>git-update-ref</em> [-m <reason>] (-d <ref> <oldvalue> | <ref> <newvalue> [<oldvalue>])</p>\r
</div>\r
<h2>DESCRIPTION</h2>\r
<div class="sectionbody">\r
the current value of the <ref> matches <oldvalue>.\r
E.g. <tt>git-update-ref refs/heads/master <newvalue> <oldvalue></tt>\r
updates the master branch head to <newvalue> only if its current\r
-value is <oldvalue>.</p>\r
+value is <oldvalue>. You can specify 40 "0" or an empty string\r
+as <oldvalue> to make sure that the ref you are creating does\r
+not exist.</p>\r
<p>It also allows a "ref" file to be a symbolic pointer to another\r
ref file by starting with the four-byte header sequence of\r
"ref:".</p>\r
for reading but not for writing (so we'll never write through a\r
ref symlink to some other tree, if you have copied a whole\r
archive by creating a symlink tree).</p>\r
+<p>With <tt>-d</tt> flag, it deletes the named <ref> after verifying it\r
+still contains <oldvalue>.</p>\r
</div>\r
<h2>Logging Updates</h2>\r
<div class="sectionbody">\r
</div>\r
<div id="footer">\r
<div id="footer-text">\r
-Last updated 03-Oct-2006 08:41:36 UTC\r
+Last updated 02-Nov-2006 00:22:40 UTC\r
</div>\r
</div>\r
</body>\r
SYNOPSIS
--------
-'git-update-ref' [-m <reason>] <ref> <newvalue> [<oldvalue>]
+'git-update-ref' [-m <reason>] (-d <ref> <oldvalue> | <ref> <newvalue> [<oldvalue>])
DESCRIPTION
-----------
the current value of the <ref> matches <oldvalue>.
E.g. `git-update-ref refs/heads/master <newvalue> <oldvalue>`
updates the master branch head to <newvalue> only if its current
-value is <oldvalue>.
+value is <oldvalue>. You can specify 40 "0" or an empty string
+as <oldvalue> to make sure that the ref you are creating does
+not exist.
It also allows a "ref" file to be a symbolic pointer to another
ref file by starting with the four-byte header sequence of
ref symlink to some other tree, if you have copied a whole
archive by creating a symlink tree).
+With `-d` flag, it deletes the named <ref> after verifying it
+still contains <oldvalue>.
+
+
Logging Updates
---------------
If config parameter "core.logAllRefUpdates" is true or the file