Skip to content

Commit 7c42ab2

Browse files
committed
Merge branch 'ps/refname-avail-check-optim' into kn/non-transactional-batch-updates
* ps/refname-avail-check-optim: (43 commits) refs: reuse iterators when determining refname availability refs/iterator: implement seeking for files iterators refs/iterator: implement seeking for packed-ref iterators refs/iterator: implement seeking for ref-cache iterators refs/iterator: implement seeking for reftable iterators refs/iterator: implement seeking for merged iterators refs/iterator: provide infrastructure to re-seek iterators refs/iterator: separate lifecycle from iteration refs: stop re-verifying common prefixes for availability refs/files: batch refname availability checks for initial transactions refs/files: batch refname availability checks for normal transactions refs/reftable: batch refname availability checks refs: introduce function to batch refname availability checks builtin/update-ref: skip ambiguity checks when parsing object IDs object-name: allow skipping ambiguity checks in `get_oid()` family object-name: introduce `repo_get_oid_with_flags()` Git 2.49-rc0 The fourteenth batch mailmap: fix check-mailmap with full mailmap line The thirteenth batch ...
2 parents b838bf1 + 87d297f commit 7c42ab2

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

63 files changed

+764
-448
lines changed

Documentation/Makefile

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
# The default target of this Makefile is...
2+
all::
3+
14
# Import tree-wide shared Makefile behavior and libraries
25
include ../shared.mak
36

@@ -238,7 +241,7 @@ DEFAULT_EDITOR_SQ = $(subst ','\'',$(DEFAULT_EDITOR))
238241
ASCIIDOC_EXTRA += -a 'git-default-editor=$(DEFAULT_EDITOR_SQ)'
239242
endif
240243

241-
all: html man
244+
all:: html man
242245

243246
html: $(DOC_HTML)
244247

Documentation/RelNotes/2.49.0.adoc

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,11 @@ UI, Workflows & Features
3333
* "git rev-list --missing=" learned to accept "print-info" that gives
3434
known details expected of the missing objects, like path and type.
3535

36+
* Comes with an updated "gitk".
37+
38+
* The documentation of "git commit" and "git rebase" now refer to
39+
commit titles as such, not "subject".
40+
3641

3742
Performance, Internal Implementation, Development Support etc.
3843
--------------------------------------------------------------
@@ -202,6 +207,25 @@ Fixes since v2.48
202207
* A thunderbird helper script lost its bashism.
203208
(merge 59d26bd961 bc/contrib-thunderbird-patch-inline-fix later to maint).
204209

210+
* The -G/-S options to the "diff" family of commands caused us to hit
211+
a BUG() when they get no values; they have been corrected.
212+
(merge a620046b29 bc/diff-reject-empty-arg-to-pickaxe later to maint).
213+
214+
* "git merge-tree --stdin" has been improved (including a workaround
215+
for a deadlock).
216+
(merge 6a9ae81015 pw/merge-tree-stdin-deadlock-fix later to maint).
217+
218+
* Correct the default target in Documentation/Makefile, and
219+
future-proof all Makefiles from similar breakages by declaring the
220+
default target (which happens to be "all") upfront.
221+
(merge 5309c1e9fb ad/set-default-target-in-makefiles later to maint).
222+
223+
* "git check-mailmap" used to segfault when queried without human
224+
readable name.
225+
(merge bb60c52131 jk/check-mailmap-wo-name-fix later to maint).
226+
227+
* Support for renaming of symbolic links on Windows has been improved.
228+
205229
* Other code cleanup, docfix, build fix, etc.
206230
(merge ddb5287894 jk/t7407-use-test-grep later to maint).
207231
(merge 21e1b44865 aj/difftool-config-doc-fix later to maint).
@@ -217,3 +241,6 @@ Fixes since v2.48
217241
(merge 087740d65a ps/leakfixes-0129 later to maint).
218242
(merge 6bba6f604b jp/doc-trailer-config later to maint).
219243
(merge f1cc562b77 lo/t7603-path-is-file-update later to maint).
244+
(merge 45761988ac en/doc-renormalize later to maint).
245+
(merge 832f56f06a jc/doc-boolean-synonyms later to maint).
246+
(merge 3eeed876a9 ac/doc-http-ssl-type-config later to maint).

Documentation/config/http.adoc

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -216,6 +216,21 @@ http.sslBackend::
216216
This option is ignored if cURL lacks support for choosing the SSL
217217
backend at runtime.
218218

219+
http.sslCertType::
220+
Type of client certificate used when fetching or pushing over HTTPS.
221+
"PEM", "DER" are supported when using openssl or gnutls backends. "P12"
222+
is supported on "openssl", "schannel", "securetransport", and gnutls 8.11+.
223+
See also libcurl `CURLOPT_SSLCERTTYPE`. Can be overridden by the
224+
`GIT_SSL_CERT_TYPE` environment variable.
225+
226+
http.sslKeyType::
227+
Type of client private key used when fetching or pushing over HTTPS. (e.g.
228+
"PEM", "DER", or "ENG"). Only applicable when using "openssl" backend. "DER"
229+
is not supported with openssl. Particularly useful when set to "ENG" for
230+
authenticating with PKCS#11 tokens, with a PKCS#11 URL in sslCert option.
231+
See also libcurl `CURLOPT_SSLKEYTYPE`. Can be overridden by the
232+
`GIT_SSL_KEY_TYPE` environment variable.
233+
219234
http.schannelCheckRevoke::
220235
Used to enforce or disable certificate revocation checks in cURL
221236
when http.sslBackend is set to "schannel". Defaults to `true` if

Documentation/config/merge.adoc

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,8 @@ merge.renormalize::
6969
Tell Git that canonical representation of files in the
7070
repository has changed over time (e.g. earlier commits record
7171
text files with CRLF line endings, but recent ones use LF line
72-
endings). In such a repository, Git can convert the data
72+
endings). In such a repository, for each file where a
73+
three-way content merge is needed, Git can convert the data
7374
recorded in commits to a canonical form before performing a
7475
merge to reduce unnecessary conflicts. For more information,
7576
see section "Merging branches with differing checkin/checkout

Documentation/git-commit.adoc

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -98,16 +98,16 @@ OPTIONS
9898
replaces the log message of _<commit>_ with its own log message
9999
but makes no changes to the content of _<commit>_.
100100
+
101-
The commit created by plain `--fixup=<commit>` has a subject
102-
composed of "fixup!" followed by the subject line from _<commit>_,
101+
The commit created by plain `--fixup=<commit>` has a title
102+
composed of "fixup!" followed by the title of _<commit>_,
103103
and is recognized specially by `git rebase --autosquash`. The `-m`
104104
option may be used to supplement the log message of the created
105105
commit, but the additional commentary will be thrown away once the
106106
"fixup!" commit is squashed into _<commit>_ by
107107
`git rebase --autosquash`.
108108
+
109109
The commit created by `--fixup=amend:<commit>` is similar but its
110-
subject is instead prefixed with "amend!". The log message of
110+
title is instead prefixed with "amend!". The log message of
111111
_<commit>_ is copied into the log message of the "amend!" commit and
112112
opened in an editor so it can be refined. When `git rebase
113113
--autosquash` squashes the "amend!" commit into _<commit>_, the
@@ -128,7 +128,7 @@ See linkgit:git-rebase[1] for details.
128128

129129
`--squash=<commit>`::
130130
Construct a commit message for use with `git rebase --autosquash`.
131-
The commit message subject line is taken from the specified
131+
The commit message title is taken from the specified
132132
commit with a prefix of "squash! ". Can be used with additional
133133
commit message options (`-m`/`-c`/`-C`/`-F`). See
134134
linkgit:git-rebase[1] for details.

Documentation/git-config.adoc

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -213,7 +213,9 @@ See also <<FILES>>.
213213
+
214214
Valid `<type>`'s include:
215215
+
216-
- 'bool': canonicalize values as either "true" or "false".
216+
- 'bool': canonicalize values `true`, `yes`,`on`, and positive
217+
numbers as "true", and values `false`, `no`, `off` and `0` as
218+
"false".
217219
- 'int': canonicalize values as simple decimal numbers. An optional suffix of
218220
'k', 'm', or 'g' will cause the value to be multiplied by 1024, 1048576, or
219221
1073741824 upon input.

Documentation/git-merge-tree.adoc

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -40,11 +40,17 @@ After the merge completes, a new toplevel tree object is created. See
4040
OPTIONS
4141
-------
4242
43+
--stdin::
44+
Read the commits to merge from the standard input rather than
45+
the command-line. See <<INPUT,INPUT FORMAT>> below for more
46+
information. Implies `-z`.
47+
4348
-z::
4449
Do not quote filenames in the <Conflicted file info> section,
4550
and end each filename with a NUL character rather than
4651
newline. Also begin the messages section with a NUL character
47-
instead of a newline. See <<OUTPUT>> below for more information.
52+
instead of a newline. See <<OUTPUT,OUTPUT>> below for more
53+
information.
4854
4955
--name-only::
5056
In the Conflicted file info section, instead of writing a list
@@ -116,8 +122,6 @@ This is an integer status followed by a NUL character. The integer status is:
116122

117123
0: merge had conflicts
118124
1: merge was clean
119-
<0: something prevented the merge from running (e.g. access to repository
120-
objects denied by filesystem)
121125

122126
[[OIDTLT]]
123127
OID of toplevel tree
@@ -235,6 +239,7 @@ with linkgit:git-merge[1]:
235239
* any messages that would have been printed to stdout (the
236240
<<IM,Informational messages>>)
237241

242+
[[INPUT]]
238243
INPUT FORMAT
239244
------------
240245
'git merge-tree --stdin' input format is fully text based. Each line

Documentation/git-rebase.adoc

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -599,11 +599,11 @@ See also INCOMPATIBLE OPTIONS below.
599599
--no-autosquash::
600600
Automatically squash commits with specially formatted messages into
601601
previous commits being rebased. If a commit message starts with
602-
"squash! ", "fixup! " or "amend! ", the remainder of the subject line
602+
"squash! ", "fixup! " or "amend! ", the remainder of the title
603603
is taken as a commit specifier, which matches a previous commit if it
604-
matches the subject line or the hash of that commit. If no commit
604+
matches the title or the hash of that commit. If no commit
605605
matches fully, matches of the specifier with the start of commit
606-
subjects are considered.
606+
titles are considered.
607607
+
608608
In the rebase todo list, the actions of squash, fixup and amend commits are
609609
changed from `pick` to `squash`, `fixup` or `fixup -C`, respectively, and they
@@ -613,7 +613,7 @@ be used to review and edit the todo list before proceeding.
613613
The recommended way to create commits with squash markers is by using the
614614
`--squash`, `--fixup`, `--fixup=amend:` or `--fixup=reword:` options of
615615
linkgit:git-commit[1], which take the target commit as an argument and
616-
automatically fill in the subject line of the new commit from that.
616+
automatically fill in the title of the new commit from that.
617617
+
618618
Setting configuration variable `rebase.autoSquash` to true enables
619619
auto-squashing by default for interactive rebase. The `--no-autosquash`

Documentation/git.adoc

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -472,8 +472,9 @@ Environment Variables
472472
---------------------
473473
Various Git commands pay attention to environment variables and change
474474
their behavior. The environment variables marked as "Boolean" take
475-
their values the same way as Boolean valued configuration variables, e.g.
476-
"true", "yes", "on" and positive numbers are taken as "yes".
475+
their values the same way as Boolean valued configuration variables, i.e.,
476+
"true", "yes", "on" and positive numbers are taken as "yes", while "false",
477+
"no", "off", and "0" are taken as "no".
477478

478479
Here are the variables:
479480

Documentation/gitattributes.adoc

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -701,8 +701,8 @@ where the attribute is not in place would normally cause merge
701701
conflicts.
702702

703703
To prevent these unnecessary merge conflicts, Git can be told to run a
704-
virtual check-out and check-in of all three stages of a file when
705-
resolving a three-way merge by setting the `merge.renormalize`
704+
virtual check-out and check-in of all three stages of each file that
705+
needs a three-way content merge, by setting the `merge.renormalize`
706706
configuration variable. This prevents changes caused by check-in
707707
conversion from causing spurious merge conflicts when a converted file
708708
is merged with an unconverted file.

0 commit comments

Comments
 (0)