Skip to content

Commit 84d172d

Browse files
committed
Autogenerated HTML docs for v2.49.0-366-gc152a
1 parent 991c664 commit 84d172d

12 files changed

+237
-8
lines changed

RelNotes/2.50.0.adoc

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,26 @@ UI, Workflows & Features
2828
this message has been turned into an advice message that can be
2929
turned off.
3030

31+
* "git rev-list" learns machine-parsable output format that delimits
32+
each field with NUL.
33+
34+
* "git maintenance" learns a new task to expire reflog entries.
35+
36+
* Auth-related (and unrelated) error handling in send-email has been
37+
made more robust.
38+
39+
* Updating multiple references have only been possible in all-or-none
40+
fashion with transactions, but it can be more efficient to batch
41+
multiple updates even when some of them are allowed to fail in a
42+
best-effort manner. A new "best effort batches of updates" mode
43+
has been introduced.
44+
45+
* "git help --build-options" reports SHA-1 and SHA-256 backends used
46+
in the build.
47+
48+
* "git cat-file --batch" and friends learned to allow "--filter=" to
49+
omit certain objects, just like the transport layer does.
50+
3151

3252
Performance, Internal Implementation, Development Support etc.
3353
--------------------------------------------------------------
@@ -71,6 +91,19 @@ Performance, Internal Implementation, Development Support etc.
7191
* The object layer has been updated to take an explicit repository
7292
instance as a parameter in more code paths.
7393
94+
* Some warnings from "-Wsign-compare" for builtin/rm.c have been
95+
squelched.
96+
97+
* A few traditional unit tests have been rewritten to use the clar
98+
framework.
99+
100+
* Some warnings from "-Wsign-compare" for pathspec.c have been
101+
squelched.
102+
103+
* "make test" used to have a hard dependency on (basic) Perl; tests
104+
have been rewritten help environment with NO_PERL test the build as
105+
much as possible.
106+
74107
75108
Fixes since v2.49
76109
-----------------
@@ -134,6 +167,21 @@ Fixes since v2.49
134167
which has been corrected..
135168
(merge d3b5832381 pw/custom-conflict-marker-size-for-merge-related-docs later to maint).
136169

170+
* Squelch false-positive from sparse.
171+
(merge da87b58014 dd/sparse-glibc-workaround later to maint).
172+
173+
* Adjust to the deprecation of use of Ubuntu 20.04 GitHub Actions CI.
174+
(merge 832d9f6d0b js/ci-github-update-ubuntu later to maint).
175+
176+
* Work around CI breakage due to fedora base image getting updated.
177+
(merge 8a471a663b js/ci-fedora-gawk later to maint).
178+
179+
* A ref transaction corner case fix.
180+
(merge b9fadeead7 jt/ref-transaction-abort-fix later to maint).
181+
182+
* Random build fixes.
183+
(merge 85e1d6819f ps/misc-build-fixes later to maint).
184+
137185
* Other code cleanup, docfix, build fix, etc.
138186
(merge 227c4f33a0 ja/doc-block-delimiter-markup-fix later to maint).
139187
(merge 2bfd3b3685 ab/decorate-code-cleanup later to maint).

git-cat-file.adoc

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,25 @@ OPTIONS
8181
end-of-line conversion, etc). In this case, `<object>` has to be of
8282
the form `<tree-ish>:<path>`, or `:<path>`.
8383

84+
--filter=<filter-spec>::
85+
--no-filter::
86+
Omit objects from the list of printed objects. This can only be used in
87+
combination with one of the batched modes. Excluded objects that have
88+
been explicitly requested via any of the batch modes that read objects
89+
via standard input (`--batch`, `--batch-check`) will be reported as
90+
"filtered". Excluded objects in `--batch-all-objects` mode will not be
91+
printed at all. The '<filter-spec>' may be one of the following:
92+
+
93+
The form '--filter=blob:none' omits all blobs.
94+
+
95+
The form '--filter=blob:limit=<n>[kmg]' omits blobs of size at least n
96+
bytes or units. n may be zero. The suffixes k, m, and g can be used to name
97+
units in KiB, MiB, or GiB. For example, 'blob:limit=1k' is the same as
98+
'blob:limit=1024'.
99+
+
100+
The form '--filter=object:type=(tag|commit|tree|blob)' omits all objects which
101+
are not of the requested type.
102+
84103
--path=<path>::
85104
For use with `--textconv` or `--filters`, to allow specifying an object
86105
name and a path separately, e.g. when it is difficult to figure out
@@ -340,6 +359,13 @@ the repository, then `cat-file` will ignore any custom format and print:
340359
<object> SP missing LF
341360
------------
342361

362+
If a name is specified on stdin that is filtered out via `--filter=`,
363+
then `cat-file` will ignore any custom format and print:
364+
365+
------------
366+
<object> SP excluded LF
367+
------------
368+
343369
If a name is specified that might refer to more than one object (an ambiguous short sha), then `cat-file` will ignore any custom format and print:
344370

345371
------------

git-cat-file.html

Lines changed: 33 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -546,6 +546,29 @@ <h2 id="_options">OPTIONS</h2>
546546
end-of-line conversion, etc). In this case, <em>&lt;object&gt;</em> has to be of
547547
the form <em>&lt;tree-ish&gt;</em><code>:</code><em>&lt;path&gt;</em>, or <code>:</code><em>&lt;path&gt;</em>.</p>
548548
</dd>
549+
<dt class="hdlist1">--filter=&lt;filter-spec&gt;</dt>
550+
<dt class="hdlist1">--no-filter</dt>
551+
<dd>
552+
<p>Omit objects from the list of printed objects. This can only be used in
553+
combination with one of the batched modes. Excluded objects that have
554+
been explicitly requested via any of the batch modes that read objects
555+
via standard input (<code>--batch</code>, <code>--batch-check</code>) will be reported as
556+
"filtered". Excluded objects in <code>--batch-all-objects</code> mode will not be
557+
printed at all. The <em>&lt;filter-spec&gt;</em> may be one of the following:</p>
558+
<div class="paragraph">
559+
<p>The form <em>--filter=blob:none</em> omits all blobs.</p>
560+
</div>
561+
<div class="paragraph">
562+
<p>The form <em>--filter=blob:limit=&lt;n&gt;[kmg]</em> omits blobs of size at least n
563+
bytes or units. n may be zero. The suffixes k, m, and g can be used to name
564+
units in KiB, MiB, or GiB. For example, <em>blob:limit=1k</em> is the same as
565+
<em>blob:limit=1024</em>.</p>
566+
</div>
567+
<div class="paragraph">
568+
<p>The form <em>--filter=object:type=(tag|commit|tree|blob)</em> omits all objects which
569+
are not of the requested type.</p>
570+
</div>
571+
</dd>
549572
<dt class="hdlist1">--path=&lt;path&gt;</dt>
550573
<dd>
551574
<p>For use with <code>--textconv</code> or <code>--filters</code>, to allow specifying an object
@@ -912,6 +935,15 @@ <h2 id="_batch_output">BATCH OUTPUT</h2>
912935
</div>
913936
</div>
914937
<div class="paragraph">
938+
<p>If a name is specified on stdin that is filtered out via <code>--filter=</code>,
939+
then <code>cat-file</code> will ignore any custom format and print:</p>
940+
</div>
941+
<div class="listingblock">
942+
<div class="content">
943+
<pre>&lt;object&gt; SP excluded LF</pre>
944+
</div>
945+
</div>
946+
<div class="paragraph">
915947
<p>If a name is specified that might refer to more than one object (an ambiguous short sha), then <code>cat-file</code> will ignore any custom format and print:</p>
916948
</div>
917949
<div class="listingblock">
@@ -1014,7 +1046,7 @@ <h2 id="_git">GIT</h2>
10141046
</div>
10151047
<div id="footer">
10161048
<div id="footer-text">
1017-
Last updated 2025-02-14 21:38:14 -0800
1049+
Last updated 2025-04-16 14:42:40 -0700
10181050
</div>
10191051
</div>
10201052
</body>

git-config.html

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6662,6 +6662,16 @@ <h3 id="_variables">Variables</h3>
66626662
number of pack-files not in the multi-pack-index is at least the value
66636663
of <code>maintenance.incremental-repack.auto</code>. The default value is 10.</p>
66646664
</dd>
6665+
<dt class="hdlist1">maintenance.reflog-expire.auto</dt>
6666+
<dd>
6667+
<p>This integer config option controls how often the <code>reflog-expire</code> task
6668+
should be run as part of <code>git</code> <code>maintenance</code> <code>run</code> <code>--auto</code>. If zero, then
6669+
the <code>reflog-expire</code> task will not run with the <code>--auto</code> option. A
6670+
negative value will force the task to run every time. Otherwise, a
6671+
positive value implies the command should run when the number of
6672+
expired reflog entries in the "HEAD" reflog is at least the value of
6673+
<code>maintenance.loose-objects.auto</code>. The default value is 100.</p>
6674+
</dd>
66656675
<dt class="hdlist1">man.viewer</dt>
66666676
<dd>
66676677
<p>Specify the programs that may be used to display help in the

git-maintenance.adoc

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -162,6 +162,10 @@ pack-refs::
162162
need to iterate across many references. See linkgit:git-pack-refs[1]
163163
for more information.
164164

165+
reflog-expire::
166+
The `reflog-expire` task deletes any entries in the reflog older than the
167+
expiry threshold. See linkgit:git-reflog[1] for more information.
168+
165169
OPTIONS
166170
-------
167171
--auto::

git-maintenance.html

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -653,6 +653,11 @@ <h2 id="_tasks">TASKS</h2>
653653
need to iterate across many references. See <a href="git-pack-refs.html">git-pack-refs(1)</a>
654654
for more information.</p>
655655
</dd>
656+
<dt class="hdlist1">reflog-expire</dt>
657+
<dd>
658+
<p>The <code>reflog-expire</code> task deletes any entries in the reflog older than the
659+
expiry threshold. See <a href="git-reflog.html">git-reflog(1)</a> for more information.</p>
660+
</dd>
656661
</dl>
657662
</div>
658663
</div>
@@ -1060,6 +1065,16 @@ <h2 id="_configuration">CONFIGURATION</h2>
10601065
number of pack-files not in the multi-pack-index is at least the value
10611066
of <code>maintenance.incremental-repack.auto</code>. The default value is 10.</p>
10621067
</dd>
1068+
<dt class="hdlist1">maintenance.reflog-expire.auto</dt>
1069+
<dd>
1070+
<p>This integer config option controls how often the <code>reflog-expire</code> task
1071+
should be run as part of <code>git</code> <code>maintenance</code> <code>run</code> <code>--auto</code>. If zero, then
1072+
the <code>reflog-expire</code> task will not run with the <code>--auto</code> option. A
1073+
negative value will force the task to run every time. Otherwise, a
1074+
positive value implies the command should run when the number of
1075+
expired reflog entries in the "HEAD" reflog is at least the value of
1076+
<code>maintenance.loose-objects.auto</code>. The default value is 100.</p>
1077+
</dd>
10631078
</dl>
10641079
</div>
10651080
</div>
@@ -1075,7 +1090,7 @@ <h2 id="_git">GIT</h2>
10751090
</div>
10761091
<div id="footer">
10771092
<div id="footer-text">
1078-
Last updated 2025-04-15 14:25:08 -0700
1093+
Last updated 2025-04-16 14:42:40 -0700
10791094
</div>
10801095
</div>
10811096
</body>

git-rev-list.html

Lines changed: 30 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -926,6 +926,35 @@ <h3 id="_commit_limiting">Commit Limiting</h3>
926926
<p>Show progress reports on stderr as objects are considered. The
927927
<em>&lt;header&gt;</em> text will be printed with each progress update.</p>
928928
</dd>
929+
<dt class="hdlist1">-z</dt>
930+
<dd>
931+
<p>Instead of being newline-delimited, each outputted object and its
932+
accompanying metadata is delimited using NUL bytes. Output is printed
933+
in the following form:</p>
934+
<div class="listingblock">
935+
<div class="content">
936+
<pre>&lt;OID&gt; NUL [&lt;token&gt;=&lt;value&gt; NUL]...</pre>
937+
</div>
938+
</div>
939+
<div class="paragraph">
940+
<p>Additional object metadata, such as object paths or boundary objects, is
941+
printed using the <em>&lt;token&gt;</em><code>=</code><em>&lt;value&gt;</em> form. Token values are printed as-is
942+
without any encoding/truncation. An OID entry never contains a <em>=</em> character
943+
and thus is used to signal the start of a new object record. Examples:</p>
944+
</div>
945+
<div class="listingblock">
946+
<div class="content">
947+
<pre>&lt;OID&gt; NUL
948+
&lt;OID&gt; NUL path=&lt;path&gt; NUL
949+
&lt;OID&gt; NUL boundary=yes NUL
950+
&lt;OID&gt; NUL missing=yes NUL [&lt;token&gt;=&lt;value&gt; NUL]...</pre>
951+
</div>
952+
</div>
953+
<div class="paragraph">
954+
<p>This mode is only compatible with the <code>--objects</code>, <code>--boundary</code>, and
955+
<code>--missing</code> output options.</p>
956+
</div>
957+
</dd>
929958
</dl>
930959
</div>
931960
</div>
@@ -2989,7 +3018,7 @@ <h2 id="_git">GIT</h2>
29893018
</div>
29903019
<div id="footer">
29913020
<div id="footer-text">
2992-
Last updated 2025-02-15 14:38:14 +0900
3021+
Last updated 2025-02-14 21:38:14 -0800
29933022
</div>
29943023
</div>
29953024
</body>

git-update-ref.adoc

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,10 @@ git-update-ref - Update the object name stored in a ref safely
77

88
SYNOPSIS
99
--------
10-
[verse]
11-
'git update-ref' [-m <reason>] [--no-deref] (-d <ref> [<old-oid>] | [--create-reflog] <ref> <new-oid> [<old-oid>] | --stdin [-z])
10+
[synopsis]
11+
git update-ref [-m <reason>] [--no-deref] -d <ref> [<old-oid>]
12+
git update-ref [-m <reason>] [--no-deref] [--create-reflog] <ref> <new-oid> [<old-oid>]
13+
git update-ref [-m <reason>] [--no-deref] --stdin [-z] [--batch-updates]
1214

1315
DESCRIPTION
1416
-----------
@@ -57,6 +59,14 @@ performs all modifications together. Specify commands of the form:
5759
With `--create-reflog`, update-ref will create a reflog for each ref
5860
even if one would not ordinarily be created.
5961

62+
With `--batch-updates`, update-ref executes the updates in a batch but allows
63+
individual updates to fail due to invalid or incorrect user input, applying only
64+
the successful updates. However, system-related errors—such as I/O failures or
65+
memory issues—will result in a full failure of all batched updates. Any failed
66+
updates will be reported in the following format:
67+
68+
rejected SP (<old-oid> | <old-target>) SP (<new-oid> | <new-target>) SP <rejection-reason> LF
69+
6070
Quote fields containing whitespace as if they were strings in C source
6171
code; i.e., surrounded by double-quotes and with backslash escapes.
6272
Use 40 "0" characters or the empty string to specify a zero value. To

git-update-ref.html

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -452,7 +452,9 @@ <h2 id="_name">NAME</h2>
452452
<h2 id="_synopsis">SYNOPSIS</h2>
453453
<div class="sectionbody">
454454
<div class="verseblock">
455-
<pre class="content"><em>git update-ref</em> [-m &lt;reason&gt;] [--no-deref] (-d &lt;ref&gt; [&lt;old-oid&gt;] | [--create-reflog] &lt;ref&gt; &lt;new-oid&gt; [&lt;old-oid&gt;] | --stdin [-z])</pre>
455+
<pre class="content"><code>git</code> <code>update-ref</code> [<code>-m</code> <em>&lt;reason&gt;</em>] [<code>--no-deref</code>] <code>-d</code> <em>&lt;ref&gt;</em> [<em>&lt;old-oid&gt;</em>]
456+
<code>git</code> <code>update-ref</code> [<code>-m</code> <em>&lt;reason&gt;</em>] [<code>--no-deref</code>] [<code>--create-reflog</code>] <em>&lt;ref&gt;</em> <em>&lt;new-oid&gt;</em> [<em>&lt;old-oid&gt;</em>]
457+
<code>git</code> <code>update-ref</code> [<code>-m</code> <em>&lt;reason&gt;</em>] [<code>--no-deref</code>] <code>--stdin</code> [<code>-z</code>] [<code>--batch-updates</code>]</pre>
456458
</div>
457459
</div>
458460
</div>
@@ -515,6 +517,18 @@ <h2 id="_description">DESCRIPTION</h2>
515517
even if one would not ordinarily be created.</p>
516518
</div>
517519
<div class="paragraph">
520+
<p>With <code>--batch-updates</code>, update-ref executes the updates in a batch but allows
521+
individual updates to fail due to invalid or incorrect user input, applying only
522+
the successful updates. However, system-related errors—such as I/O failures or
523+
memory issues—will result in a full failure of all batched updates. Any failed
524+
updates will be reported in the following format:</p>
525+
</div>
526+
<div class="literalblock">
527+
<div class="content">
528+
<pre>rejected SP (&lt;old-oid&gt; | &lt;old-target&gt;) SP (&lt;new-oid&gt; | &lt;new-target&gt;) SP &lt;rejection-reason&gt; LF</pre>
529+
</div>
530+
</div>
531+
<div class="paragraph">
518532
<p>Quote fields containing whitespace as if they were strings in C source
519533
code; i.e., surrounded by double-quotes and with backslash escapes.
520534
Use 40 "0" characters or the empty string to specify a zero value. To
@@ -715,7 +729,7 @@ <h2 id="_git">GIT</h2>
715729
</div>
716730
<div id="footer">
717731
<div id="footer-text">
718-
Last updated 2025-02-14 21:38:14 -0800
732+
Last updated 2025-04-16 14:42:40 -0700
719733
</div>
720734
</div>
721735
</body>

git-version.adoc

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,14 @@ OPTIONS
2222
--build-options::
2323
Include additional information about how git was built for diagnostic
2424
purposes.
25+
+
26+
The libraries used to implement the SHA-1 and SHA-256 algorithms are displayed
27+
in the form `SHA-1: <option>` and `SHA-256: <option>`. Note that the SHA-1
28+
options `SHA1_APPLE`, `SHA1_OPENSSL`, and `SHA1_BLK` do not use a collision
29+
detection algorithm and thus may be vulnerable to known SHA-1 collision
30+
attacks. When a faster SHA-1 implementation without collision detection is used
31+
for only non-cryptographic purposes, the algorithm is displayed in the form
32+
`non-collision-detecting-SHA-1: <option>`.
2533

2634
GIT
2735
---

git-version.html

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -477,6 +477,15 @@ <h2 id="_options">OPTIONS</h2>
477477
<dd>
478478
<p>Include additional information about how git was built for diagnostic
479479
purposes.</p>
480+
<div class="paragraph">
481+
<p>The libraries used to implement the SHA-1 and SHA-256 algorithms are displayed
482+
in the form <code>SHA-1:</code> <em>&lt;option&gt;</em> and <code>SHA-256:</code> <em>&lt;option&gt;</em>. Note that the SHA-1
483+
options <code>SHA1_APPLE</code>, <code>SHA1_OPENSSL</code>, and <code>SHA1_BLK</code> do not use a collision
484+
detection algorithm and thus may be vulnerable to known SHA-1 collision
485+
attacks. When a faster SHA-1 implementation without collision detection is used
486+
for only non-cryptographic purposes, the algorithm is displayed in the form
487+
<code>non-collision-detecting-SHA-1:</code> <em>&lt;option&gt;</em>.</p>
488+
</div>
480489
</dd>
481490
</dl>
482491
</div>
@@ -493,7 +502,7 @@ <h2 id="_git">GIT</h2>
493502
</div>
494503
<div id="footer">
495504
<div id="footer-text">
496-
Last updated 2025-02-14 21:38:14 -0800
505+
Last updated 2025-04-16 14:42:40 -0700
497506
</div>
498507
</div>
499508
</body>

0 commit comments

Comments
 (0)