summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2021-03-22 14:20:26 -0700
committerJunio C Hamano <gitster@pobox.com>2021-03-22 14:20:26 -0700
commit458281a5cc4fbbf5382b507870ac92d09f4cb1d9 (patch)
treef969cc3e9470c06902051bcd159aa1bc58a02bb2
parentd6b9ba3262e9125b842efd226c8023a5c9aed98c (diff)
downloadgit-htmldocs-458281a5cc4fbbf5382b507870ac92d09f4cb1d9.tar.gz
Autogenerated HTML docs for v2.31.0-97-g14243
-rw-r--r--RelNotes/2.32.0.txt52
-rw-r--r--git-cat-file.html69
-rw-r--r--git-cat-file.txt67
-rw-r--r--git-config.html21
-rw-r--r--git-diff-tree.html28
-rw-r--r--git-log.html28
-rw-r--r--git-rev-list.html28
-rw-r--r--git-show.html28
-rw-r--r--git-stash.html30
-rw-r--r--git-stash.txt22
-rw-r--r--gitattributes.html5
-rw-r--r--gitattributes.txt3
-rw-r--r--gitdiffcore.html4
-rw-r--r--gitdiffcore.txt2
-rw-r--r--githooks.html34
-rw-r--r--githooks.txt33
-rw-r--r--gitignore.html4
-rw-r--r--gitignore.txt2
-rw-r--r--howto/keep-canonical-history-correct.html2
-rw-r--r--howto/maintain-git.html2
-rw-r--r--howto/new-command.html2
-rw-r--r--howto/rebase-from-internal-branch.html2
-rw-r--r--howto/rebuild-from-update-hook.html2
-rw-r--r--howto/recover-corrupted-blob-object.html2
-rw-r--r--howto/recover-corrupted-object-harder.html2
-rw-r--r--howto/revert-a-faulty-merge.html2
-rw-r--r--howto/revert-branch-rebase.html2
-rw-r--r--howto/separating-topic-branches.html2
-rw-r--r--howto/setup-git-server-over-http.html2
-rw-r--r--howto/update-hook-example.html2
-rw-r--r--howto/use-git-daemon.html2
-rw-r--r--howto/using-merge-subtree.html2
-rw-r--r--howto/using-signed-tag-in-pull-request.html2
-rw-r--r--pretty-formats.txt13
34 files changed, 370 insertions, 133 deletions
diff --git a/RelNotes/2.32.0.txt b/RelNotes/2.32.0.txt
index 1195ee48a..6de5c3dac 100644
--- a/RelNotes/2.32.0.txt
+++ b/RelNotes/2.32.0.txt
@@ -1,17 +1,35 @@
Git 2.32 Release Notes
======================
+Backward compatibility notes
+----------------------------
+
+ * ".gitattributes", ".gitignore", and ".mailmap" files that are
+ symbolic links are ignored.
+
+
Updates since v2.32
-------------------
-Backward incompatible and other important changes
+UI, Workflows & Features
+ * It does not make sense to make ".gitattributes", ".gitignore" and
+ ".mailmap" symlinks, as they are supposed to be usable from the
+ object store (think: bare repositories where HEAD:.mailmap etc. are
+ used). When these files are symbolic links, we used to read the
+ contents of the files pointed by them by mistake, which has been
+ corrected.
-UI, Workflows & Features
+ * "git stash show" learned to optionally show untracked part of the
+ stash.
+
+ * "git log --format='...'" learned "%(describe)" placeholder.
Performance, Internal Implementation, Development Support etc.
+ * Rename detection rework continues.
+
Fixes since v2.31
-----------------
@@ -43,9 +61,39 @@ Fixes since v2.31
which was introduced in 2.29 timeframe.
(merge 93c3d297b5 tb/git-mv-icase-fix later to maint).
+ * We had a code to diagnose and die cleanly when a required
+ clean/smudge filter is missing, but an assert before that
+ unnecessarily fired, hiding the end-user facing die() message.
+ (merge 6fab35f748 mt/cleanly-die-upon-missing-required-filter later to maint).
+
+ * Update C code that sets a few configuration variables when a remote
+ is configured so that it spells configuration variable names in the
+ canonical camelCase.
+ (merge 0f1da600e6 ab/remote-write-config-in-camel-case later to maint).
+
+ * A new configuration variable has been introduced to allow choosing
+ which version of the generation number gets used in the
+ commit-graph file.
+ (merge 702110aac6 ds/commit-graph-generation-config later to maint).
+
+ * Perf test update to work better in secondary worktrees.
+ (merge 36e834abc1 jk/perf-in-worktrees later to maint).
+
+ * Updates to memory allocation code around the use of pcre2 library.
+ (merge c1760352e0 ab/grep-pcre2-allocfix later to maint).
+
+ * "git -c core.bare=false clone --bare ..." would have segfaulted,
+ which has been corrected.
+ (merge 75555676ad bc/clone-bare-with-conflicting-config later to maint).
+
* Other code cleanup, docfix, build fix, etc.
(merge 486f4bd183 jc/calloc-fix later to maint).
(merge 5f70859c15 jt/clone-unborn-head later to maint).
(merge cfd409ed09 km/config-doc-typofix later to maint).
(merge 8588aa8657 jk/slimmed-down later to maint).
(merge 241b5d3ebe rs/xcalloc-takes-nelem-first later to maint).
+ (merge f451960708 dl/cat-file-doc-cleanup later to maint).
+ (merge 12604a8d0c sv/t9801-test-path-is-file-cleanup later to maint).
+ (merge ea7e63921c jr/doc-ignore-typofix later to maint).
+ (merge 23c781f173 ps/update-ref-trans-hook-doc later to maint).
+ (merge 42efa1231a jk/filter-branch-sha256 later to maint).
diff --git a/git-cat-file.html b/git-cat-file.html
index b8e6c2cec..93762990a 100644
--- a/git-cat-file.html
+++ b/git-cat-file.html
@@ -790,7 +790,7 @@ whitespace, so that the appropriate drivers can be determined.</p></div>
<dd>
<p>
Instead of the content, show the object type identified by
- &lt;object&gt;.
+ <code>&lt;object&gt;</code>.
</p>
</dd>
<dt class="hdlist1">
@@ -799,7 +799,7 @@ whitespace, so that the appropriate drivers can be determined.</p></div>
<dd>
<p>
Instead of the content, show the object size identified by
- &lt;object&gt;.
+ <code>&lt;object&gt;</code>.
</p>
</dd>
<dt class="hdlist1">
@@ -807,8 +807,8 @@ whitespace, so that the appropriate drivers can be determined.</p></div>
</dt>
<dd>
<p>
- Exit with zero status if &lt;object&gt; exists and is a valid
- object. If &lt;object&gt; is of an invalid format exit with non-zero and
+ Exit with zero status if <code>&lt;object&gt;</code> exists and is a valid
+ object. If <code>&lt;object&gt;</code> is of an invalid format exit with non-zero and
emits an error on stderr.
</p>
</dd>
@@ -817,7 +817,7 @@ whitespace, so that the appropriate drivers can be determined.</p></div>
</dt>
<dd>
<p>
- Pretty-print the contents of &lt;object&gt; based on its type.
+ Pretty-print the contents of <code>&lt;object&gt;</code> based on its type.
</p>
</dd>
<dt class="hdlist1">
@@ -825,11 +825,11 @@ whitespace, so that the appropriate drivers can be determined.</p></div>
</dt>
<dd>
<p>
- Typically this matches the real type of &lt;object&gt; but asking
+ Typically this matches the real type of <code>&lt;object&gt;</code> but asking
for a type that can trivially be dereferenced from the given
- &lt;object&gt; is also permitted. An example is to ask for a
- "tree" with &lt;object&gt; being a commit object that contains it,
- or to ask for a "blob" with &lt;object&gt; being a tag object that
+ <code>&lt;object&gt;</code> is also permitted. An example is to ask for a
+ "tree" with <code>&lt;object&gt;</code> being a commit object that contains it,
+ or to ask for a "blob" with <code>&lt;object&gt;</code> being a tag object that
points at it.
</p>
</dd>
@@ -839,9 +839,9 @@ whitespace, so that the appropriate drivers can be determined.</p></div>
<dd>
<p>
Show the content as transformed by a textconv filter. In this case,
- &lt;object&gt; has to be of the form &lt;tree-ish&gt;:&lt;path&gt;, or :&lt;path&gt; in
+ <code>&lt;object&gt;</code> has to be of the form <code>&lt;tree-ish&gt;:&lt;path&gt;</code>, or <code>:&lt;path&gt;</code> in
order to apply the filter to the content recorded in the index at
- &lt;path&gt;.
+ <code>&lt;path&gt;</code>.
</p>
</dd>
<dt class="hdlist1">
@@ -850,9 +850,9 @@ whitespace, so that the appropriate drivers can be determined.</p></div>
<dd>
<p>
Show the content as converted by the filters configured in
- the current working tree for the given &lt;path&gt; (i.e. smudge filters,
- end-of-line conversion, etc). In this case, &lt;object&gt; has to be of
- the form &lt;tree-ish&gt;:&lt;path&gt;, or :&lt;path&gt;.
+ the current working tree for the given <code>&lt;path&gt;</code> (i.e. smudge filters,
+ end-of-line conversion, etc). In this case, <code>&lt;object&gt;</code> has to be of
+ the form <code>&lt;tree-ish&gt;:&lt;path&gt;</code>, or <code>:&lt;path&gt;</code>.
</p>
</dd>
<dt class="hdlist1">
@@ -860,7 +860,7 @@ whitespace, so that the appropriate drivers can be determined.</p></div>
</dt>
<dd>
<p>
- For use with --textconv or --filters, to allow specifying an object
+ For use with <code>--textconv</code> or <code>--filters</code>, to allow specifying an object
name and a path separately, e.g. when it is difficult to figure out
the revision from which the blob came.
</p>
@@ -939,7 +939,7 @@ whitespace, so that the appropriate drivers can be determined.</p></div>
</dt>
<dd>
<p>
- Allow -s or -t to query broken/corrupt objects of unknown type.
+ Allow <code>-s</code> or <code>-t</code> to query broken/corrupt objects of unknown type.
</p>
</dd>
<dt class="hdlist1">
@@ -947,12 +947,12 @@ whitespace, so that the appropriate drivers can be determined.</p></div>
</dt>
<dd>
<p>
- With --batch or --batch-check, follow symlinks inside the
+ With <code>--batch</code> or <code>--batch-check</code>, follow symlinks inside the
repository when requesting objects with extended SHA-1
expressions of the form tree-ish:path-in-tree. Instead of
providing output about the link itself, provide output about
the linked-to object. If a symlink points outside the
- tree-ish (e.g. a link to /foo or a root-level link to ../foo),
+ tree-ish (e.g. a link to <code>/foo</code> or a root-level link to <code>../foo</code>),
the portion of the link which is outside the tree will be
printed.
</p>
@@ -1015,11 +1015,11 @@ respectively print:</p></div>
<div class="sect1">
<h2 id="_output">OUTPUT</h2>
<div class="sectionbody">
-<div class="paragraph"><p>If <code>-t</code> is specified, one of the &lt;type&gt;.</p></div>
-<div class="paragraph"><p>If <code>-s</code> is specified, the size of the &lt;object&gt; in bytes.</p></div>
-<div class="paragraph"><p>If <code>-e</code> is specified, no output, unless the &lt;object&gt; is malformed.</p></div>
-<div class="paragraph"><p>If <code>-p</code> is specified, the contents of &lt;object&gt; are pretty-printed.</p></div>
-<div class="paragraph"><p>If &lt;type&gt; is specified, the raw (though uncompressed) contents of the &lt;object&gt;
+<div class="paragraph"><p>If <code>-t</code> is specified, one of the <code>&lt;type&gt;</code>.</p></div>
+<div class="paragraph"><p>If <code>-s</code> is specified, the size of the <code>&lt;object&gt;</code> in bytes.</p></div>
+<div class="paragraph"><p>If <code>-e</code> is specified, no output, unless the <code>&lt;object&gt;</code> is malformed.</p></div>
+<div class="paragraph"><p>If <code>-p</code> is specified, the contents of <code>&lt;object&gt;</code> are pretty-printed.</p></div>
+<div class="paragraph"><p>If <code>&lt;type&gt;</code> is specified, the raw (though uncompressed) contents of the <code>&lt;object&gt;</code>
will be returned.</p></div>
</div>
</div>
@@ -1040,7 +1040,7 @@ newline. The available atoms are:</p></div>
</dt>
<dd>
<p>
- The 40-hex object name of the object.
+ The full hex representation of the object name.
</p>
</dd>
<dt class="hdlist1">
@@ -1075,8 +1075,9 @@ newline. The available atoms are:</p></div>
<dd>
<p>
If the object is stored as a delta on-disk, this expands to the
- 40-hex sha1 of the delta base object. Otherwise, expands to the
- null sha1 (40 zeroes). See <code>CAVEATS</code> below.
+ full hex representation of the delta base object name.
+ Otherwise, expands to the null OID (all zeroes). See <code>CAVEATS</code>
+ below.
</p>
</dd>
<dt class="hdlist1">
@@ -1100,13 +1101,13 @@ newline.</p></div>
<div class="paragraph"><p>For example, <code>--batch</code> without a custom format would produce:</p></div>
<div class="listingblock">
<div class="content">
-<pre><code>&lt;sha1&gt; SP &lt;type&gt; SP &lt;size&gt; LF
+<pre><code>&lt;oid&gt; SP &lt;type&gt; SP &lt;size&gt; LF
&lt;contents&gt; LF</code></pre>
</div></div>
<div class="paragraph"><p>Whereas <code>--batch-check='%(objectname) %(objecttype)'</code> would produce:</p></div>
<div class="listingblock">
<div class="content">
-<pre><code>&lt;sha1&gt; SP &lt;type&gt; LF</code></pre>
+<pre><code>&lt;oid&gt; SP &lt;type&gt; LF</code></pre>
</div></div>
<div class="paragraph"><p>If a name is specified on stdin that cannot be resolved to an object in
the repository, then <code>cat-file</code> will ignore any custom format and print:</p></div>
@@ -1119,7 +1120,7 @@ the repository, then <code>cat-file</code> will ignore any custom format and pri
<div class="content">
<pre><code>&lt;object&gt; SP ambiguous LF</code></pre>
</div></div>
-<div class="paragraph"><p>If --follow-symlinks is used, and a symlink in the repository points
+<div class="paragraph"><p>If <code>--follow-symlinks</code> is used, and a symlink in the repository points
outside the repository, then <code>cat-file</code> will ignore any custom format
and print:</p></div>
<div class="listingblock">
@@ -1127,10 +1128,10 @@ and print:</p></div>
<pre><code>symlink SP &lt;size&gt; LF
&lt;symlink&gt; LF</code></pre>
</div></div>
-<div class="paragraph"><p>The symlink will either be absolute (beginning with a /), or relative
-to the tree root. For instance, if dir/link points to ../../foo, then
-&lt;symlink&gt; will be ../foo. &lt;size&gt; is the size of the symlink in bytes.</p></div>
-<div class="paragraph"><p>If --follow-symlinks is used, the following error messages will be
+<div class="paragraph"><p>The symlink will either be absolute (beginning with a <code>/</code>), or relative
+to the tree root. For instance, if dir/link points to <code>../../foo</code>, then
+<code>&lt;symlink&gt;</code> will be <code>../foo</code>. <code>&lt;size&gt;</code> is the size of the symlink in bytes.</p></div>
+<div class="paragraph"><p>If <code>--follow-symlinks</code> is used, the following error messages will be
displayed:</p></div>
<div class="listingblock">
<div class="content">
@@ -1185,7 +1186,7 @@ will be reported.</p></div>
<div id="footer">
<div id="footer-text">
Last updated
- 2020-07-09 14:26:04 PDT
+ 2021-03-22 14:17:33 PDT
</div>
</div>
</body>
diff --git a/git-cat-file.txt b/git-cat-file.txt
index 8e192d87d..4eb0421b3 100644
--- a/git-cat-file.txt
+++ b/git-cat-file.txt
@@ -35,42 +35,42 @@ OPTIONS
-t::
Instead of the content, show the object type identified by
- <object>.
+ `<object>`.
-s::
Instead of the content, show the object size identified by
- <object>.
+ `<object>`.
-e::
- Exit with zero status if <object> exists and is a valid
- object. If <object> is of an invalid format exit with non-zero and
+ Exit with zero status if `<object>` exists and is a valid
+ object. If `<object>` is of an invalid format exit with non-zero and
emits an error on stderr.
-p::
- Pretty-print the contents of <object> based on its type.
+ Pretty-print the contents of `<object>` based on its type.
<type>::
- Typically this matches the real type of <object> but asking
+ Typically this matches the real type of `<object>` but asking
for a type that can trivially be dereferenced from the given
- <object> is also permitted. An example is to ask for a
- "tree" with <object> being a commit object that contains it,
- or to ask for a "blob" with <object> being a tag object that
+ `<object>` is also permitted. An example is to ask for a
+ "tree" with `<object>` being a commit object that contains it,
+ or to ask for a "blob" with `<object>` being a tag object that
points at it.
--textconv::
Show the content as transformed by a textconv filter. In this case,
- <object> has to be of the form <tree-ish>:<path>, or :<path> in
+ `<object>` has to be of the form `<tree-ish>:<path>`, or `:<path>` in
order to apply the filter to the content recorded in the index at
- <path>.
+ `<path>`.
--filters::
Show the content as converted by the filters configured in
- the current working tree for the given <path> (i.e. smudge filters,
- end-of-line conversion, etc). In this case, <object> has to be of
- the form <tree-ish>:<path>, or :<path>.
+ the current working tree for the given `<path>` (i.e. smudge filters,
+ end-of-line conversion, etc). In this case, `<object>` has to be of
+ the form `<tree-ish>:<path>`, or `:<path>`.
--path=<path>::
- For use with --textconv or --filters, to allow specifying an object
+ For use with `--textconv` or `--filters`, to allow specifying an object
name and a path separately, e.g. when it is difficult to figure out
the revision from which the blob came.
@@ -115,15 +115,15 @@ OPTIONS
repository.
--allow-unknown-type::
- Allow -s or -t to query broken/corrupt objects of unknown type.
+ Allow `-s` or `-t` to query broken/corrupt objects of unknown type.
--follow-symlinks::
- With --batch or --batch-check, follow symlinks inside the
+ With `--batch` or `--batch-check`, follow symlinks inside the
repository when requesting objects with extended SHA-1
expressions of the form tree-ish:path-in-tree. Instead of
providing output about the link itself, provide output about
the linked-to object. If a symlink points outside the
- tree-ish (e.g. a link to /foo or a root-level link to ../foo),
+ tree-ish (e.g. a link to `/foo` or a root-level link to `../foo`),
the portion of the link which is outside the tree will be
printed.
+
@@ -175,15 +175,15 @@ respectively print:
OUTPUT
------
-If `-t` is specified, one of the <type>.
+If `-t` is specified, one of the `<type>`.
-If `-s` is specified, the size of the <object> in bytes.
+If `-s` is specified, the size of the `<object>` in bytes.
-If `-e` is specified, no output, unless the <object> is malformed.
+If `-e` is specified, no output, unless the `<object>` is malformed.
-If `-p` is specified, the contents of <object> are pretty-printed.
+If `-p` is specified, the contents of `<object>` are pretty-printed.
-If <type> is specified, the raw (though uncompressed) contents of the <object>
+If `<type>` is specified, the raw (though uncompressed) contents of the `<object>`
will be returned.
BATCH OUTPUT
@@ -200,7 +200,7 @@ object, with placeholders of the form `%(atom)` expanded, followed by a
newline. The available atoms are:
`objectname`::
- The 40-hex object name of the object.
+ The full hex representation of the object name.
`objecttype`::
The type of the object (the same as `cat-file -t` reports).
@@ -215,8 +215,9 @@ newline. The available atoms are:
`deltabase`::
If the object is stored as a delta on-disk, this expands to the
- 40-hex sha1 of the delta base object. Otherwise, expands to the
- null sha1 (40 zeroes). See `CAVEATS` below.
+ full hex representation of the delta base object name.
+ Otherwise, expands to the null OID (all zeroes). See `CAVEATS`
+ below.
`rest`::
If this atom is used in the output string, input lines are split
@@ -235,14 +236,14 @@ newline.
For example, `--batch` without a custom format would produce:
------------
-<sha1> SP <type> SP <size> LF
+<oid> SP <type> SP <size> LF
<contents> LF
------------
Whereas `--batch-check='%(objectname) %(objecttype)'` would produce:
------------
-<sha1> SP <type> LF
+<oid> SP <type> LF
------------
If a name is specified on stdin that cannot be resolved to an object in
@@ -258,7 +259,7 @@ If a name is specified that might refer to more than one object (an ambiguous sh
<object> SP ambiguous LF
------------
-If --follow-symlinks is used, and a symlink in the repository points
+If `--follow-symlinks` is used, and a symlink in the repository points
outside the repository, then `cat-file` will ignore any custom format
and print:
@@ -267,11 +268,11 @@ symlink SP <size> LF
<symlink> LF
------------
-The symlink will either be absolute (beginning with a /), or relative
-to the tree root. For instance, if dir/link points to ../../foo, then
-<symlink> will be ../foo. <size> is the size of the symlink in bytes.
+The symlink will either be absolute (beginning with a `/`), or relative
+to the tree root. For instance, if dir/link points to `../../foo`, then
+`<symlink>` will be `../foo`. `<size>` is the size of the symlink in bytes.
-If --follow-symlinks is used, the following error messages will be
+If `--follow-symlinks` is used, the following error messages will be
displayed:
------------
diff --git a/git-config.html b/git-config.html
index 6601d3860..54a481539 100644
--- a/git-config.html
+++ b/git-config.html
@@ -4015,6 +4015,17 @@ commit.verbose
</p>
</dd>
<dt class="hdlist1">
+commitGraph.generationVersion
+</dt>
+<dd>
+<p>
+ Specifies the type of generation number version to use when writing
+ or reading the commit-graph file. If version 1 is specified, then
+ the corrected commit dates will not be written or read. Defaults to
+ 2.
+</p>
+</dd>
+<dt class="hdlist1">
commitGraph.maxNewFilters
</dt>
<dd>
@@ -9454,6 +9465,16 @@ stash.useBuiltin
</p>
</dd>
<dt class="hdlist1">
+stash.showIncludeUntracked
+</dt>
+<dd>
+<p>
+ If this is set to true, the <code>git stash show</code> command without an
+ option will show the untracked files of a stash entry. Defaults to
+ false. See description of <em>show</em> command in <a href="git-stash.html">git-stash(1)</a>.
+</p>
+</dd>
+<dt class="hdlist1">
stash.showPatch
</dt>
<dd>
diff --git a/git-diff-tree.html b/git-diff-tree.html
index f13d92cab..fc76e7b03 100644
--- a/git-diff-tree.html
+++ b/git-diff-tree.html
@@ -2968,6 +2968,34 @@ ref names without the " (", ")" wrapping.
</p>
</dd>
<dt class="hdlist1">
+<em>%(describe[:options])</em>
+</dt>
+<dd>
+<p>
+human-readable name, like
+ <a href="git-describe.html">git-describe(1)</a>; empty string for
+ undescribable commits. The <code>describe</code> string
+ may be followed by a colon and zero or more
+ comma-separated options. Descriptions can be
+ inconsistent when tags are added or removed at
+ the same time.
+</p>
+<div class="ulist"><ul>
+<li>
+<p>
+<em>match=&lt;pattern&gt;</em>: Only consider tags matching the given
+ <code>glob(7)</code> pattern, excluding the "refs/tags/" prefix.
+</p>
+</li>
+<li>
+<p>
+<em>exclude=&lt;pattern&gt;</em>: Do not consider tags matching the given
+ <code>glob(7)</code> pattern, excluding the "refs/tags/" prefix.
+</p>
+</li>
+</ul></div>
+</dd>
+<dt class="hdlist1">
<em>%S</em>
</dt>
<dd>
diff --git a/git-log.html b/git-log.html
index 49e62b278..78a53414d 100644
--- a/git-log.html
+++ b/git-log.html
@@ -3019,6 +3019,34 @@ ref names without the " (", ")" wrapping.
</p>
</dd>
<dt class="hdlist1">
+<em>%(describe[:options])</em>
+</dt>
+<dd>
+<p>
+human-readable name, like
+ <a href="git-describe.html">git-describe(1)</a>; empty string for
+ undescribable commits. The <code>describe</code> string
+ may be followed by a colon and zero or more
+ comma-separated options. Descriptions can be
+ inconsistent when tags are added or removed at
+ the same time.
+</p>
+<div class="ulist"><ul>
+<li>
+<p>
+<em>match=&lt;pattern&gt;</em>: Only consider tags matching the given
+ <code>glob(7)</code> pattern, excluding the "refs/tags/" prefix.
+</p>
+</li>
+<li>
+<p>
+<em>exclude=&lt;pattern&gt;</em>: Do not consider tags matching the given
+ <code>glob(7)</code> pattern, excluding the "refs/tags/" prefix.
+</p>
+</li>
+</ul></div>
+</dd>
+<dt class="hdlist1">
<em>%S</em>
</dt>
<dd>
diff --git a/git-rev-list.html b/git-rev-list.html
index eaad01459..f6c134e87 100644
--- a/git-rev-list.html
+++ b/git-rev-list.html
@@ -3113,6 +3113,34 @@ ref names without the " (", ")" wrapping.
</p>
</dd>
<dt class="hdlist1">
+<em>%(describe[:options])</em>
+</dt>
+<dd>
+<p>
+human-readable name, like
+ <a href="git-describe.html">git-describe(1)</a>; empty string for
+ undescribable commits. The <code>describe</code> string
+ may be followed by a colon and zero or more
+ comma-separated options. Descriptions can be
+ inconsistent when tags are added or removed at
+ the same time.
+</p>
+<div class="ulist"><ul>
+<li>
+<p>
+<em>match=&lt;pattern&gt;</em>: Only consider tags matching the given
+ <code>glob(7)</code> pattern, excluding the "refs/tags/" prefix.
+</p>
+</li>
+<li>
+<p>
+<em>exclude=&lt;pattern&gt;</em>: Do not consider tags matching the given
+ <code>glob(7)</code> pattern, excluding the "refs/tags/" prefix.
+</p>
+</li>
+</ul></div>
+</dd>
+<dt class="hdlist1">
<em>%S</em>
</dt>
<dd>
diff --git a/git-show.html b/git-show.html
index 7b0b821e7..3c4fdcedb 100644
--- a/git-show.html
+++ b/git-show.html
@@ -1551,6 +1551,34 @@ ref names without the " (", ")" wrapping.
</p>
</dd>
<dt class="hdlist1">
+<em>%(describe[:options])</em>
+</dt>
+<dd>
+<p>
+human-readable name, like
+ <a href="git-describe.html">git-describe(1)</a>; empty string for
+ undescribable commits. The <code>describe</code> string
+ may be followed by a colon and zero or more
+ comma-separated options. Descriptions can be
+ inconsistent when tags are added or removed at
+ the same time.
+</p>
+<div class="ulist"><ul>
+<li>
+<p>
+<em>match=&lt;pattern&gt;</em>: Only consider tags matching the given
+ <code>glob(7)</code> pattern, excluding the "refs/tags/" prefix.
+</p>
+</li>
+<li>
+<p>
+<em>exclude=&lt;pattern&gt;</em>: Do not consider tags matching the given
+ <code>glob(7)</code> pattern, excluding the "refs/tags/" prefix.
+</p>
+</li>
+</ul></div>
+</dd>
+<dt class="hdlist1">
<em>%S</em>
</dt>
<dd>
diff --git a/git-stash.html b/git-stash.html
index 148879c44..9318b1295 100644
--- a/git-stash.html
+++ b/git-stash.html
@@ -750,7 +750,7 @@ git-stash(1) Manual Page
<div class="sectionbody">
<div class="verseblock">
<pre class="content"><em>git stash</em> list [&lt;log-options&gt;]
-<em>git stash</em> show [&lt;diff-options&gt;] [&lt;stash&gt;]
+<em>git stash</em> show [-u|--include-untracked|--only-untracked] [&lt;diff-options&gt;] [&lt;stash&gt;]
<em>git stash</em> drop [-q|--quiet] [&lt;stash&gt;]
<em>git stash</em> ( pop | apply ) [--index] [-q|--quiet] [&lt;stash&gt;]
<em>git stash</em> branch &lt;branchname&gt; [&lt;stash&gt;]
@@ -838,7 +838,7 @@ stash@{1}: On master: 9cc0589... Add git-stash</code></pre>
command to control what is shown and how. See <a href="git-log.html">git-log(1)</a>.</p></div>
</dd>
<dt class="hdlist1">
-show [&lt;diff-options&gt;] [&lt;stash&gt;]
+show [-u|--include-untracked|--only-untracked] [&lt;diff-options&gt;] [&lt;stash&gt;]
</dt>
<dd>
<p>
@@ -848,8 +848,8 @@ show [&lt;diff-options&gt;] [&lt;stash&gt;]
By default, the command shows the diffstat, but it will accept any
format known to <em>git diff</em> (e.g., <code>git stash show -p stash@{1}</code>
to view the second most recent entry in patch form).
- You can use stash.showStat and/or stash.showPatch config variables
- to change the default behavior.
+ You can use stash.showIncludeUntracked, stash.showStat, and
+ stash.showPatch config variables to change the default behavior.
</p>
</dd>
<dt class="hdlist1">
@@ -960,12 +960,26 @@ up with <code>git clean</code>.</p></div>
<dt class="hdlist1">
--include-untracked
</dt>
+<dt class="hdlist1">
+--no-include-untracked
+</dt>
<dd>
<p>
- This option is only valid for <code>push</code> and <code>save</code> commands.
+ When used with the <code>push</code> and <code>save</code> commands,
+ all untracked files are also stashed and then cleaned up with
+ <code>git clean</code>.
+</p>
+<div class="paragraph"><p>When used with the <code>show</code> command, show the untracked files in the stash
+entry as part of the diff.</p></div>
+</dd>
+<dt class="hdlist1">
+--only-untracked
+</dt>
+<dd>
+<p>
+ This option is only valid for the <code>show</code> command.
</p>
-<div class="paragraph"><p>All untracked files are also stashed and then cleaned up with
-<code>git clean</code>.</p></div>
+<div class="paragraph"><p>Show only the untracked files in the stash entry as part of the diff.</p></div>
</dd>
<dt class="hdlist1">
--index
@@ -1231,7 +1245,7 @@ xargs git log --merges --no-walk --grep=WIP</code></pre>
<div id="footer">
<div id="footer-text">
Last updated
- 2021-02-22 16:54:23 PST
+ 2021-03-22 14:17:33 PDT
</div>
</div>
</body>
diff --git a/git-stash.txt b/git-stash.txt
index f1197d641..a8c8c32f1 100644
--- a/git-stash.txt
+++ b/git-stash.txt
@@ -9,7 +9,7 @@ SYNOPSIS
--------
[verse]
'git stash' list [<log-options>]
-'git stash' show [<diff-options>] [<stash>]
+'git stash' show [-u|--include-untracked|--only-untracked] [<diff-options>] [<stash>]
'git stash' drop [-q|--quiet] [<stash>]
'git stash' ( pop | apply ) [--index] [-q|--quiet] [<stash>]
'git stash' branch <branchname> [<stash>]
@@ -83,7 +83,7 @@ stash@{1}: On master: 9cc0589... Add git-stash
The command takes options applicable to the 'git log'
command to control what is shown and how. See linkgit:git-log[1].
-show [<diff-options>] [<stash>]::
+show [-u|--include-untracked|--only-untracked] [<diff-options>] [<stash>]::
Show the changes recorded in the stash entry as a diff between the
stashed contents and the commit back when the stash entry was first
@@ -91,8 +91,8 @@ show [<diff-options>] [<stash>]::
By default, the command shows the diffstat, but it will accept any
format known to 'git diff' (e.g., `git stash show -p stash@{1}`
to view the second most recent entry in patch form).
- You can use stash.showStat and/or stash.showPatch config variables
- to change the default behavior.
+ You can use stash.showIncludeUntracked, stash.showStat, and
+ stash.showPatch config variables to change the default behavior.
pop [--index] [-q|--quiet] [<stash>]::
@@ -160,10 +160,18 @@ up with `git clean`.
-u::
--include-untracked::
- This option is only valid for `push` and `save` commands.
+--no-include-untracked::
+ When used with the `push` and `save` commands,
+ all untracked files are also stashed and then cleaned up with
+ `git clean`.
++
+When used with the `show` command, show the untracked files in the stash
+entry as part of the diff.
+
+--only-untracked::
+ This option is only valid for the `show` command.
+
-All untracked files are also stashed and then cleaned up with
-`git clean`.
+Show only the untracked files in the stash entry as part of the diff.
--index::
This option is only valid for `pop` and `apply` commands.
diff --git a/gitattributes.html b/gitattributes.html
index 373a8e427..249f12391 100644
--- a/gitattributes.html
+++ b/gitattributes.html
@@ -2040,7 +2040,8 @@ tag then no replacement will be done. The placeholders are the same
as those for the option <code>--pretty=format:</code> of <a href="git-log.html">git-log(1)</a>,
except that they need to be wrapped like this: <code>$Format:PLACEHOLDERS$</code>
in the file. E.g. the string <code>$Format:%H$</code> will be replaced by the
-commit hash.</p></div>
+commit hash. However, only one <code>%(describe)</code> placeholder is expanded
+per archive to avoid denial-of-service attacks.</p></div>
</div>
</div>
<div class="sect2">
@@ -2181,7 +2182,7 @@ frotz unspecified</code></pre>
<div id="footer">
<div id="footer-text">
Last updated
- 2020-11-02 14:02:22 PST
+ 2021-03-22 14:17:33 PDT
</div>
</div>
</body>
diff --git a/gitattributes.txt b/gitattributes.txt
index e84e104f9..0a60472bb 100644
--- a/gitattributes.txt
+++ b/gitattributes.txt
@@ -1174,7 +1174,8 @@ tag then no replacement will be done. The placeholders are the same
as those for the option `--pretty=format:` of linkgit:git-log[1],
except that they need to be wrapped like this: `$Format:PLACEHOLDERS$`
in the file. E.g. the string `$Format:%H$` will be replaced by the
-commit hash.
+commit hash. However, only one `%(describe)` placeholder is expanded
+per archive to avoid denial-of-service attacks.
Packing objects
diff --git a/gitdiffcore.html b/gitdiffcore.html
index bfb02082e..0f83ea59e 100644
--- a/gitdiffcore.html
+++ b/gitdiffcore.html
@@ -954,7 +954,7 @@ mark a file pair as a rename and stop considering other candidates for
better matches. At most, one comparison is done per file in this
preliminary pass; so if there are several remaining ext.txt files
throughout the directory hierarchy after exact rename detection, this
-preliminary step will be skipped for those files.</p></div>
+preliminary step may be skipped for those files.</p></div>
<div class="paragraph"><p>Note. When the "-C" option is used with <code>--find-copies-harder</code>
option, <em>git diff-&#42;</em> commands feed unmodified filepairs to
diffcore mechanism as well as modified ones. This lets the copy
@@ -1108,7 +1108,7 @@ not sorted when diffcore-order is in effect.</p></div>
<div id="footer">
<div id="footer-text">
Last updated
- 2021-03-02 23:05:01 PST
+ 2021-03-22 14:17:33 PDT
</div>
</div>
</body>
diff --git a/gitdiffcore.txt b/gitdiffcore.txt
index 1c7269655..0d57f86ab 100644
--- a/gitdiffcore.txt
+++ b/gitdiffcore.txt
@@ -187,7 +187,7 @@ mark a file pair as a rename and stop considering other candidates for
better matches. At most, one comparison is done per file in this
preliminary pass; so if there are several remaining ext.txt files
throughout the directory hierarchy after exact rename detection, this
-preliminary step will be skipped for those files.
+preliminary step may be skipped for those files.
Note. When the "-C" option is used with `--find-copies-harder`
option, 'git diff-{asterisk}' commands feed unmodified filepairs to
diff --git a/githooks.html b/githooks.html
index 205c3930a..4d422deb5 100644
--- a/githooks.html
+++ b/githooks.html
@@ -856,7 +856,7 @@ given); <code>template</code> (if a <code>-t</code> option was given or the
configuration option <code>commit.template</code> is set); <code>merge</code> (if the
commit is a merge or a <code>.git/MERGE_MSG</code> file exists); <code>squash</code>
(if a <code>.git/SQUASH_MSG</code> file exists); or <code>commit</code>, followed by
-a commit SHA-1 (if a <code>-c</code>, <code>-C</code> or <code>--amend</code> option was given).</p></div>
+a commit object name (if a <code>-c</code>, <code>-C</code> or <code>--amend</code> option was given).</p></div>
<div class="paragraph"><p>If the exit status is non-zero, <code>git commit</code> will abort.</p></div>
<div class="paragraph"><p>The purpose of the hook is to edit the message file in place, and
it is not suppressed by the <code>--no-verify</code> option. A non-zero exit
@@ -934,7 +934,7 @@ named remote is not being used both values will be the same.</p></div>
input with lines of the form:</p></div>
<div class="literalblock">
<div class="content">
-<pre><code>&lt;local ref&gt; SP &lt;local sha1&gt; SP &lt;remote ref&gt; SP &lt;remote sha1&gt; LF</code></pre>
+<pre><code>&lt;local ref&gt; SP &lt;local object name&gt; SP &lt;remote ref&gt; SP &lt;remote object name&gt; LF</code></pre>
</div></div>
<div class="paragraph"><p>For instance, if the command <code>git push origin master:foreign</code> were run the
hook would receive a line like the following:</p></div>
@@ -942,12 +942,12 @@ hook would receive a line like the following:</p></div>
<div class="content">
<pre><code>refs/heads/master 67890 refs/heads/foreign 12345</code></pre>
</div></div>
-<div class="paragraph"><p>although the full, 40-character SHA-1s would be supplied. If the foreign ref
-does not yet exist the <code>&lt;remote SHA-1&gt;</code> will be 40 <code>0</code>. If a ref is to be
-deleted, the <code>&lt;local ref&gt;</code> will be supplied as <code>(delete)</code> and the <code>&lt;local
-SHA-1&gt;</code> will be 40 <code>0</code>. If the local commit was specified by something other
-than a name which could be expanded (such as <code>HEAD~</code>, or a SHA-1) it will be
-supplied as it was originally given.</p></div>
+<div class="paragraph"><p>although the full object name would be supplied. If the foreign ref does not
+yet exist the <code>&lt;remote object name&gt;</code> will be the all-zeroes object name. If a
+ref is to be deleted, the <code>&lt;local ref&gt;</code> will be supplied as <code>(delete)</code> and the
+<code>&lt;local object name&gt;</code> will be the all-zeroes object name. If the local commit
+was specified by something other than a name which could be expanded (such as
+<code>HEAD~</code>, or an object name) it will be supplied as it was originally given.</p></div>
<div class="paragraph"><p>If this hook exits with a non-zero status, <code>git push</code> will abort without
pushing anything. Information about why the push is rejected may be sent
to the user by writing to standard error.</p></div>
@@ -969,7 +969,7 @@ input a line of the format:</p></div>
<div class="paragraph"><p>where <code>&lt;old-value&gt;</code> is the old object name stored in the ref,
<code>&lt;new-value&gt;</code> is the new object name to be stored in the ref and
<code>&lt;ref-name&gt;</code> is the full name of the ref.
-When creating a new ref, <code>&lt;old-value&gt;</code> is 40 <code>0</code>.</p></div>
+When creating a new ref, <code>&lt;old-value&gt;</code> is the all-zeroes object name.</p></div>
<div class="paragraph"><p>If the hook exits with non-zero status, none of the refs will be
updated. If the hook exits with zero, updating of individual refs can
still be prevented by the <a href="#update"><em>update</em></a> hook.</p></div>
@@ -1159,7 +1159,8 @@ for the user.</p></div>
<h3 id="_reference_transaction">reference-transaction</h3>
<div class="paragraph"><p>This hook is invoked by any Git command that performs reference
updates. It executes whenever a reference transaction is prepared,
-committed or aborted and may thus get called multiple times.</p></div>
+committed or aborted and may thus get called multiple times. The hook
+does not cover symbolic references (but that may change in the future).</p></div>
<div class="paragraph"><p>The hook takes exactly one argument, which is the current state the
given reference transaction is in:</p></div>
<div class="ulist"><ul>
@@ -1188,6 +1189,13 @@ receives on standard input a line of the format:</p></div>
<div class="content">
<pre><code>&lt;old-value&gt; SP &lt;new-value&gt; SP &lt;ref-name&gt; LF</code></pre>
</div></div>
+<div class="paragraph"><p>where <code>&lt;old-value&gt;</code> is the old object name passed into the reference
+transaction, <code>&lt;new-value&gt;</code> is the new object name to be stored in the
+ref and <code>&lt;ref-name&gt;</code> is the full name of the ref. When force updating
+the reference regardless of its current value or when the reference is
+to be created anew, <code>&lt;old-value&gt;</code> is the all-zeroes object name. To
+distinguish these cases, you can inspect the current value of
+<code>&lt;ref-name&gt;</code> via <code>git rev-parse</code>.</p></div>
<div class="paragraph"><p>The exit status of the hook is ignored for any state except for the
"prepared" state. In the "prepared" state, a non-zero exit status will
cause the transaction to be aborted. The hook will not be called with
@@ -1240,7 +1248,7 @@ command-dependent arguments may be passed in the future.</p></div>
format</p></div>
<div class="literalblock">
<div class="content">
-<pre><code>&lt;old-sha1&gt; SP &lt;new-sha1&gt; [ SP &lt;extra-info&gt; ] LF</code></pre>
+<pre><code>&lt;old-object-name&gt; SP &lt;new-object-name&gt; [ SP &lt;extra-info&gt; ] LF</code></pre>
</div></div>
<div class="paragraph"><p>The <em>extra-info</em> is again command-dependent. If it is empty, the
preceding SP is also omitted. Currently, no commands pass any
@@ -1258,7 +1266,7 @@ rebase
For the <em>squash</em> and <em>fixup</em> operation, all commits that were
squashed are listed as being rewritten to the squashed commit.
This means that there will be several lines sharing the same
- <em>new-sha1</em>.
+ <em>new-object-name</em>.
</p>
<div class="paragraph"><p>The commits are guaranteed to be listed in the order that they were
processed by rebase.</p></div>
@@ -1369,7 +1377,7 @@ running passing "1", "1" should not be possible.</p></div>
<div id="footer">
<div id="footer-text">
Last updated
- 2021-01-15 16:12:09 PST
+ 2021-03-22 14:17:33 PDT
</div>
</div>
</body>
diff --git a/githooks.txt b/githooks.txt
index 1f3b57d04..b51959ff9 100644
--- a/githooks.txt
+++ b/githooks.txt
@@ -138,7 +138,7 @@ given); `template` (if a `-t` option was given or the
configuration option `commit.template` is set); `merge` (if the
commit is a merge or a `.git/MERGE_MSG` file exists); `squash`
(if a `.git/SQUASH_MSG` file exists); or `commit`, followed by
-a commit SHA-1 (if a `-c`, `-C` or `--amend` option was given).
+a commit object name (if a `-c`, `-C` or `--amend` option was given).
If the exit status is non-zero, `git commit` will abort.
@@ -231,19 +231,19 @@ named remote is not being used both values will be the same.
Information about what is to be pushed is provided on the hook's standard
input with lines of the form:
- <local ref> SP <local sha1> SP <remote ref> SP <remote sha1> LF
+ <local ref> SP <local object name> SP <remote ref> SP <remote object name> LF
For instance, if the command +git push origin master:foreign+ were run the
hook would receive a line like the following:
refs/heads/master 67890 refs/heads/foreign 12345
-although the full, 40-character SHA-1s would be supplied. If the foreign ref
-does not yet exist the `<remote SHA-1>` will be 40 `0`. If a ref is to be
-deleted, the `<local ref>` will be supplied as `(delete)` and the `<local
-SHA-1>` will be 40 `0`. If the local commit was specified by something other
-than a name which could be expanded (such as `HEAD~`, or a SHA-1) it will be
-supplied as it was originally given.
+although the full object name would be supplied. If the foreign ref does not
+yet exist the `<remote object name>` will be the all-zeroes object name. If a
+ref is to be deleted, the `<local ref>` will be supplied as `(delete)` and the
+`<local object name>` will be the all-zeroes object name. If the local commit
+was specified by something other than a name which could be expanded (such as
+`HEAD~`, or an object name) it will be supplied as it was originally given.
If this hook exits with a non-zero status, `git push` will abort without
pushing anything. Information about why the push is rejected may be sent
@@ -268,7 +268,7 @@ input a line of the format:
where `<old-value>` is the old object name stored in the ref,
`<new-value>` is the new object name to be stored in the ref and
`<ref-name>` is the full name of the ref.
-When creating a new ref, `<old-value>` is 40 `0`.
+When creating a new ref, `<old-value>` is the all-zeroes object name.
If the hook exits with non-zero status, none of the refs will be
updated. If the hook exits with zero, updating of individual refs can
@@ -473,7 +473,8 @@ reference-transaction
This hook is invoked by any Git command that performs reference
updates. It executes whenever a reference transaction is prepared,
-committed or aborted and may thus get called multiple times.
+committed or aborted and may thus get called multiple times. The hook
+does not cover symbolic references (but that may change in the future).
The hook takes exactly one argument, which is the current state the
given reference transaction is in:
@@ -492,6 +493,14 @@ receives on standard input a line of the format:
<old-value> SP <new-value> SP <ref-name> LF
+where `<old-value>` is the old object name passed into the reference
+transaction, `<new-value>` is the new object name to be stored in the
+ref and `<ref-name>` is the full name of the ref. When force updating
+the reference regardless of its current value or when the reference is
+to be created anew, `<old-value>` is the all-zeroes object name. To
+distinguish these cases, you can inspect the current value of
+`<ref-name>` via `git rev-parse`.
+
The exit status of the hook is ignored for any state except for the
"prepared" state. In the "prepared" state, a non-zero exit status will
cause the transaction to be aborted. The hook will not be called with
@@ -550,7 +559,7 @@ command-dependent arguments may be passed in the future.
The hook receives a list of the rewritten commits on stdin, in the
format
- <old-sha1> SP <new-sha1> [ SP <extra-info> ] LF
+ <old-object-name> SP <new-object-name> [ SP <extra-info> ] LF
The 'extra-info' is again command-dependent. If it is empty, the
preceding SP is also omitted. Currently, no commands pass any
@@ -566,7 +575,7 @@ rebase::
For the 'squash' and 'fixup' operation, all commits that were
squashed are listed as being rewritten to the squashed commit.
This means that there will be several lines sharing the same
- 'new-sha1'.
+ 'new-object-name'.
+
The commits are guaranteed to be listed in the order that they were
processed by rebase.
diff --git a/gitignore.html b/gitignore.html
index e43e7488f..876bf28c1 100644
--- a/gitignore.html
+++ b/gitignore.html
@@ -966,7 +966,7 @@ not tracked by Git remain untracked.</p></div>
<li>
<p>
The pattern <code>hello.*</code> matches any file or folder
- whose name begins with <code>hello</code>. If one wants to restrict
+ whose name begins with <code>hello.</code>. If one wants to restrict
this only to the directory and not in its subdirectories,
one can prepend the pattern with a slash, i.e. <code>/hello.*</code>;
the pattern now matches <code>hello.txt</code>, <code>hello.c</code> but not
@@ -1069,7 +1069,7 @@ everything within <code>foo/bar</code>):</p></div>
<div id="footer">
<div id="footer-text">
Last updated
- 2020-03-10 08:03:13 PDT
+ 2021-03-22 14:17:33 PDT
</div>
</div>
</body>
diff --git a/gitignore.txt b/gitignore.txt
index d47b1ae29..5751603b1 100644
--- a/gitignore.txt
+++ b/gitignore.txt
@@ -153,7 +153,7 @@ EXAMPLES
--------
- The pattern `hello.*` matches any file or folder
- whose name begins with `hello`. If one wants to restrict
+ whose name begins with `hello.`. If one wants to restrict
this only to the directory and not in its subdirectories,
one can prepend the pattern with a slash, i.e. `/hello.*`;
the pattern now matches `hello.txt`, `hello.c` but not
diff --git a/howto/keep-canonical-history-correct.html b/howto/keep-canonical-history-correct.html
index 191e59dec..bac2a5bf9 100644
--- a/howto/keep-canonical-history-correct.html
+++ b/howto/keep-canonical-history-correct.html
@@ -938,7 +938,7 @@ tip of your <em>master</em> again and redo the two merges:</p></div>
<div id="footer">
<div id="footer-text">
Last updated
- 2021-03-19 16:26:04 PDT
+ 2021-03-22 14:18:27 PDT
</div>
</div>
</body>
diff --git a/howto/maintain-git.html b/howto/maintain-git.html
index d90d1cc5c..5c022da1a 100644
--- a/howto/maintain-git.html
+++ b/howto/maintain-git.html
@@ -1469,7 +1469,7 @@ $ git update-ref -d $mf/ai/topic</code></pre>
<div id="footer">
<div id="footer-text">
Last updated
- 2021-03-19 16:26:04 PDT
+ 2021-03-22 14:18:27 PDT
</div>
</div>
</body>
diff --git a/howto/new-command.html b/howto/new-command.html
index ed9cbf7d4..e37226104 100644
--- a/howto/new-command.html
+++ b/howto/new-command.html
@@ -863,7 +863,7 @@ letter [PATCH 0/n].
<div id="footer">
<div id="footer-text">
Last updated
- 2021-03-19 16:26:00 PDT
+ 2021-03-22 14:18:24 PDT
</div>
</div>
</body>
diff --git a/howto/rebase-from-internal-branch.html b/howto/rebase-from-internal-branch.html
index b17dd7eef..c70e5e7e3 100644
--- a/howto/rebase-from-internal-branch.html
+++ b/howto/rebase-from-internal-branch.html
@@ -895,7 +895,7 @@ the #1' commit.</p></div>
<div id="footer">
<div id="footer-text">
Last updated
- 2021-03-19 16:26:04 PDT
+ 2021-03-22 14:18:27 PDT
</div>
</div>
</body>
diff --git a/howto/rebuild-from-update-hook.html b/howto/rebuild-from-update-hook.html
index e53ee53e3..6f179efe1 100644
--- a/howto/rebuild-from-update-hook.html
+++ b/howto/rebuild-from-update-hook.html
@@ -847,7 +847,7 @@ This is still crude and does not protect against simultaneous
<div id="footer">
<div id="footer-text">
Last updated
- 2021-03-19 16:26:04 PDT
+ 2021-03-22 14:18:27 PDT
</div>
</div>
</body>
diff --git a/howto/recover-corrupted-blob-object.html b/howto/recover-corrupted-blob-object.html
index 6cacad401..392bdfee3 100644
--- a/howto/recover-corrupted-blob-object.html
+++ b/howto/recover-corrupted-blob-object.html
@@ -880,7 +880,7 @@ thing.</p></div>
<div id="footer">
<div id="footer-text">
Last updated
- 2021-03-19 16:26:03 PDT
+ 2021-03-22 14:18:26 PDT
</div>
</div>
</body>
diff --git a/howto/recover-corrupted-object-harder.html b/howto/recover-corrupted-object-harder.html
index 486cf2c1d..95530831f 100644
--- a/howto/recover-corrupted-object-harder.html
+++ b/howto/recover-corrupted-object-harder.html
@@ -1189,7 +1189,7 @@ int main(int argc, char **argv)
<div id="footer">
<div id="footer-text">
Last updated
- 2021-03-19 16:26:03 PDT
+ 2021-03-22 14:18:27 PDT
</div>
</div>
</body>
diff --git a/howto/revert-a-faulty-merge.html b/howto/revert-a-faulty-merge.html
index b437737df..e87f574a3 100644
--- a/howto/revert-a-faulty-merge.html
+++ b/howto/revert-a-faulty-merge.html
@@ -1025,7 +1025,7 @@ P---o---o---M---x---x---W---x---M2
<div id="footer">
<div id="footer-text">
Last updated
- 2021-03-19 16:26:03 PDT
+ 2021-03-22 14:18:26 PDT
</div>
</div>
</body>
diff --git a/howto/revert-branch-rebase.html b/howto/revert-branch-rebase.html
index d011b4ea5..a546b35af 100644
--- a/howto/revert-branch-rebase.html
+++ b/howto/revert-branch-rebase.html
@@ -907,7 +907,7 @@ Committed merge 7fb9b7262a1d1e0a47bbfdcbbcf50ce0635d3f8f
<div id="footer">
<div id="footer-text">
Last updated
- 2021-03-19 16:26:00 PDT
+ 2021-03-22 14:18:24 PDT
</div>
</div>
</body>
diff --git a/howto/separating-topic-branches.html b/howto/separating-topic-branches.html
index f3252bab4..163c41b73 100644
--- a/howto/separating-topic-branches.html
+++ b/howto/separating-topic-branches.html
@@ -841,7 +841,7 @@ o---o"master"</code></pre>
<div id="footer">
<div id="footer-text">
Last updated
- 2021-03-19 16:26:02 PDT
+ 2021-03-22 14:18:26 PDT
</div>
</div>
</body>
diff --git a/howto/setup-git-server-over-http.html b/howto/setup-git-server-over-http.html
index 218a5dbb0..7347e07a8 100644
--- a/howto/setup-git-server-over-http.html
+++ b/howto/setup-git-server-over-http.html
@@ -1071,7 +1071,7 @@ help diagnosing the problem, but removes security checks.</p></div>
<div id="footer">
<div id="footer-text">
Last updated
- 2021-03-19 16:26:02 PDT
+ 2021-03-22 14:18:25 PDT
</div>
</div>
</body>
diff --git a/howto/update-hook-example.html b/howto/update-hook-example.html
index 8722d91d1..3904ffdbb 100644
--- a/howto/update-hook-example.html
+++ b/howto/update-hook-example.html
@@ -930,7 +930,7 @@ that JC can make non-fast-forward pushes on it.</p></div>
<div id="footer">
<div id="footer-text">
Last updated
- 2021-03-19 16:26:02 PDT
+ 2021-03-22 14:18:25 PDT
</div>
</div>
</body>
diff --git a/howto/use-git-daemon.html b/howto/use-git-daemon.html
index 0cdb87e58..f4c24a149 100644
--- a/howto/use-git-daemon.html
+++ b/howto/use-git-daemon.html
@@ -791,7 +791,7 @@ a good practice to put the paths after a "--" separator.</p></div>
<div id="footer">
<div id="footer-text">
Last updated
- 2021-03-19 16:26:01 PDT
+ 2021-03-22 14:18:25 PDT
</div>
</div>
</body>
diff --git a/howto/using-merge-subtree.html b/howto/using-merge-subtree.html
index a944ce973..85bd36df5 100644
--- a/howto/using-merge-subtree.html
+++ b/howto/using-merge-subtree.html
@@ -848,7 +848,7 @@ Please note that if the other project merges from you, then it will
<div id="footer">
<div id="footer-text">
Last updated
- 2021-03-19 16:26:01 PDT
+ 2021-03-22 14:18:24 PDT
</div>
</div>
</body>
diff --git a/howto/using-signed-tag-in-pull-request.html b/howto/using-signed-tag-in-pull-request.html
index cd0f91dc1..d0ae93480 100644
--- a/howto/using-signed-tag-in-pull-request.html
+++ b/howto/using-signed-tag-in-pull-request.html
@@ -952,7 +952,7 @@ as part of the merge commit.</p></div>
<div id="footer">
<div id="footer-text">
Last updated
- 2021-03-19 16:26:01 PDT
+ 2021-03-22 14:18:25 PDT
</div>
</div>
</body>
diff --git a/pretty-formats.txt b/pretty-formats.txt
index 6b59e28d4..45133066e 100644
--- a/pretty-formats.txt
+++ b/pretty-formats.txt
@@ -208,6 +208,19 @@ The placeholders are:
'%cs':: committer date, short format (`YYYY-MM-DD`)
'%d':: ref names, like the --decorate option of linkgit:git-log[1]
'%D':: ref names without the " (", ")" wrapping.
+'%(describe[:options])':: human-readable name, like
+ linkgit:git-describe[1]; empty string for
+ undescribable commits. The `describe` string
+ may be followed by a colon and zero or more
+ comma-separated options. Descriptions can be
+ inconsistent when tags are added or removed at
+ the same time.
++
+** 'match=<pattern>': Only consider tags matching the given
+ `glob(7)` pattern, excluding the "refs/tags/" prefix.
+** 'exclude=<pattern>': Do not consider tags matching the given
+ `glob(7)` pattern, excluding the "refs/tags/" prefix.
+
'%S':: ref name given on the command line by which the commit was reached
(like `git log --source`), only works with `git log`
'%e':: encoding