| 1 | Git v2.45 Release Notes |
| 2 | ======================= |
| 3 | |
| 4 | Backward Compatibility Notes |
| 5 | |
| 6 | UI, Workflows & Features |
| 7 | |
| 8 | * Integrate the reftable code into the refs framework as a backend. |
| 9 | With "git init --ref-format=reftable", hopefully it would be a lot |
| 10 | more efficient to manage a repository with many references. |
| 11 | |
| 12 | * "git checkout -p" and friends learned that "@" is a synonym |
| 13 | for "HEAD". |
| 14 | |
| 15 | * Variants of vimdiff learned to honor mergetool.<variant>.layout |
| 16 | settings. |
| 17 | |
| 18 | * "git reflog" learned a "list" subcommand that enumerates known reflogs. |
| 19 | |
| 20 | * When a merge conflicted at a submodule, merge-ort backend used to |
| 21 | unconditionally give a lengthy message to suggest how to resolve |
| 22 | it. Now the message can be squelched as an advice message. |
| 23 | |
| 24 | * "git for-each-ref" learned "--include-root-refs" option to show |
| 25 | even the stuff outside the 'refs/' hierarchy. |
| 26 | |
| 27 | * "git rev-list --missing=print" has learned to optionally take |
| 28 | "--allow-missing-tips", which allows the objects at the starting |
| 29 | points to be missing. |
| 30 | |
| 31 | * "git merge-tree" has learned that the three trees involved in the |
| 32 | 3-way merge only need to be trees, not necessarily commits. |
| 33 | |
| 34 | * "git log --merge" learned to pay attention to CHERRY_PICK_HEAD and |
| 35 | other kinds of *_HEAD pseudorefs. |
| 36 | |
| 37 | * Platform specific tweaks for OS/390 has been added to |
| 38 | config.mak.uname. |
| 39 | |
| 40 | * Users with safe.bareRepository=explicit can still work from within |
| 41 | $GIT_DIR of a seconary worktree (which resides at .git/worktrees/$name/) |
| 42 | of the primary worktree without explicitly specifying the $GIT_DIR |
| 43 | environment variable or the --git-dir=<path> option. |
| 44 | |
| 45 | * The output format for dates "iso-strict" has been tweaked to show |
| 46 | a time in the Zulu timezone with "Z" suffix, instead of "+00:00". |
| 47 | |
| 48 | * "git diff" and friends learned two extra configuration variables, |
| 49 | diff.srcPrefix and diff.dstPrefix. |
| 50 | |
| 51 | * The status.showUntrackedFiles configuration variable had a name |
| 52 | that tempts users to set a Boolean value expressed in our usual |
| 53 | "false", "off", and "0", but it only took "no". This has been |
| 54 | corrected so "true" and its synonyms are taken as "normal", while |
| 55 | "false" and its synonyms are taken as "no". |
| 56 | |
| 57 | * Remove an ancient and not well maintained Hg-to-git migration |
| 58 | script from contrib/. |
| 59 | |
| 60 | * Hints that suggest what to do after resolving conflicts can now be |
| 61 | squelched by disabling advice.mergeConflict. |
| 62 | |
| 63 | * Allow git-cherry-pick(1) to automatically drop redundant commits via |
| 64 | a new `--empty` option, similar to the `--empty` options for |
| 65 | git-rebase(1) and git-am(1). Includes a soft deprecation of |
| 66 | `--keep-redundant-commits` as well as some related docs changes and |
| 67 | sequencer code cleanup. |
| 68 | |
| 69 | * "git config" learned "--comment=<message>" option to leave a |
| 70 | comment immediately after the "variable = value" on the same line |
| 71 | in the configuration file. |
| 72 | |
| 73 | * core.commentChar used to be limited to a single byte, but has been |
| 74 | updated to allow an arbitrary multi-byte sequence. |
| 75 | |
| 76 | * "git add -p" and other "interactive hunk selection" UI has learned to |
| 77 | skip showing the hunk immediately after it has already been shown, and |
| 78 | an additional action to explicitly ask to reshow the current hunk. |
| 79 | |
| 80 | * "git pack-refs" learned the "--auto" option, which defers the decision of |
| 81 | whether and how to pack to the ref backend. This is used by the reftable |
| 82 | backend to avoid repacking of an already-optimal ref database. The new mode |
| 83 | is triggered from "git gc --auto". |
| 84 | |
| 85 | * "git add -u <pathspec>" and "git commit [-i] <pathspec>" did not |
| 86 | diagnose a pathspec element that did not match any files in certain |
| 87 | situations, unlike "git add <pathspec>" did. |
| 88 | |
| 89 | * The userdiff patterns for C# has been updated. |
| 90 | |
| 91 | * Git writes a "waiting for your editor" message on an incomplete |
| 92 | line after launching an editor, and then append another error |
| 93 | message on the same line if the editor errors out. It now clears |
| 94 | the "waiting for..." line before giving the error message. |
| 95 | |
| 96 | * The filename used for rejected hunks "git apply --reject" creates |
| 97 | was limited to PATH_MAX, which has been lifted. |
| 98 | |
| 99 | * When "git bisect" reports the commit it determined to be the |
| 100 | culprit, we used to show it in a format that does not honor common |
| 101 | UI tweaks, like log.date and log.decorate. The code has been |
| 102 | taught to use "git show" to follow more customizations. |
| 103 | |
| 104 | |
| 105 | Performance, Internal Implementation, Development Support etc. |
| 106 | |
| 107 | * The code to iterate over refs with the reftable backend has seen |
| 108 | some optimization. |
| 109 | |
| 110 | * More tests that are marked as "ref-files only" have been updated to |
| 111 | improve test coverage of reftable backend. |
| 112 | |
| 113 | * Some parts of command line completion script (in contrib/) have |
| 114 | been micro-optimized. |
| 115 | |
| 116 | * The way placeholders are to be marked-up in documentation have been |
| 117 | specified; use "_<placeholder>_" to typeset the word inside a pair |
| 118 | of <angle-brackets> emphasized. |
| 119 | |
| 120 | * "git --no-lazy-fetch cmd" allows to run "cmd" while disabling lazy |
| 121 | fetching of objects from the promisor remote, which may be handy |
| 122 | for debugging. |
| 123 | |
| 124 | * The implementation in "git clean" that makes "-n" and "-i" ignore |
| 125 | clean.requireForce has been simplified, together with the |
| 126 | documentation. |
| 127 | |
| 128 | * Uses of xwrite() helper have been audited and updated for better |
| 129 | error checking and simpler code. |
| 130 | |
| 131 | * Some trace2 events that lacked def_param have learned to show it, |
| 132 | enriching the output. |
| 133 | |
| 134 | * The parse-options code that deals with abbreviated long option |
| 135 | names have been cleaned up. |
| 136 | |
| 137 | * The code in reftable backend that creates new table files works |
| 138 | better with the tempfile framework to avoid leaving cruft after a |
| 139 | failure. |
| 140 | |
| 141 | * The reftable code has its own custom binary search function whose |
| 142 | comparison callback has an unusual interface, which caused the |
| 143 | binary search to degenerate into a linear search, which has been |
| 144 | corrected. |
| 145 | |
| 146 | * The code to iterate over reflogs in the reftable has been optimized |
| 147 | to reduce memory allocation and deallocation. |
| 148 | |
| 149 | * Work to support a repository that work with both SHA-1 and SHA-256 |
| 150 | hash algorithms has started. |
| 151 | |
| 152 | * A new fuzz target that exercises config parsing code has been |
| 153 | added. |
| 154 | |
| 155 | * Fix the way recently added tests interpolate variables defined |
| 156 | outside them, and document the best practice to help future |
| 157 | developers. |
| 158 | |
| 159 | * Introduce an experimental protocol for contributors to propose the |
| 160 | topic description to be used in the "What's cooking" report, the |
| 161 | merge commit message for the topic, and in the release notes and |
| 162 | document it in the SubmittingPatches document. |
| 163 | |
| 164 | * The t/README file now gives a hint on running individual tests in |
| 165 | the "t/" directory with "make t<num>-*.sh t<num>-*.sh". |
| 166 | (merge 8d383806fc pb/test-scripts-are-build-targets later to maint). |
| 167 | |
| 168 | * The "hint:" messages given by the advice mechanism, when given a |
| 169 | message with a blank line, left a line with trailing whitespace, |
| 170 | which has been cleansed. |
| 171 | |
| 172 | * Documentation rules has been explicitly described how to mark-up |
| 173 | literal parts and a few manual pages have been updated as examples. |
| 174 | |
| 175 | * The .editorconfig file has been taught that a Makefile uses HT |
| 176 | indentation. |
| 177 | |
| 178 | * t-prio-queue test has been cleaned up by using C99 compound |
| 179 | literals; this is meant to also serve as a weather-balloon to smoke |
| 180 | out folks with compilers who have trouble compiling code that uses |
| 181 | the feature. |
| 182 | |
| 183 | * Windows binary used to decide the use of unix-domain socket at |
| 184 | build time, but it learned to make the decision at runtime instead. |
| 185 | |
| 186 | * The "shared repository" test in the t0610 reftable test failed |
| 187 | under restrictive umask setting (e.g. 007), which has been |
| 188 | corrected. |
| 189 | |
| 190 | * Document and apply workaround for a buggy version of dash that |
| 191 | mishandles "local var=val" construct. |
| 192 | |
| 193 | * The codepaths that reach date_mode_from_type() have been updated to |
| 194 | pass "struct date_mode" by value to make them thread safe. |
| 195 | |
| 196 | * The strategy to compact multiple tables of reftables after many |
| 197 | operations accumulate many entries has been improved to avoid |
| 198 | accumulating too many tables uncollected. |
| 199 | |
| 200 | * The code to iterate over reftable blocks has seen some optimization |
| 201 | to reduce memory allocation and deallocation. |
| 202 | |
| 203 | * The way "git fast-import" handles paths described in its input has |
| 204 | been tightened up and more clearly documented. |
| 205 | |
| 206 | * The cvsimport tests required that the platform understands |
| 207 | traditional timezone notations like CST6CDT, which has been |
| 208 | updated to work on those systems as long as they understand |
| 209 | POSIX notation with explicit tz transition dates. |
| 210 | |
| 211 | * The code to format trailers have been cleaned up. |
| 212 | |
| 213 | |
| 214 | Fixes since v2.44 |
| 215 | ----------------- |
| 216 | |
| 217 | * "git apply" on a filesystem without filemode support have learned |
| 218 | to take a hint from what is in the index for the path, even when |
| 219 | not working with the "--index" or "--cached" option, when checking |
| 220 | the executable bit match what is required by the preimage in the |
| 221 | patch. |
| 222 | (merge 45b625142d cp/apply-core-filemode later to maint). |
| 223 | |
| 224 | * "git column" has been taught to reject negative padding value, as |
| 225 | it would lead to nonsense behaviour including division by zero. |
| 226 | (merge 76fb807faa kh/column-reject-negative-padding later to maint). |
| 227 | |
| 228 | * "git am --help" now tells readers what actions are available in |
| 229 | "git am --whitespace=<action>", in addition to saying that the |
| 230 | option is passed through to the underlying "git apply". |
| 231 | (merge a171dac734 jc/am-whitespace-doc later to maint). |
| 232 | |
| 233 | * "git tag --column" failed to check the exit status of its "git |
| 234 | column" invocation, which has been corrected. |
| 235 | (merge 92e66478fc rj/tag-column-fix later to maint). |
| 236 | |
| 237 | * Credential helper based on libsecret (in contrib/) has been updated |
| 238 | to handle an empty password correctly. |
| 239 | (merge 8f1f2023b7 mh/libsecret-empty-password-fix later to maint). |
| 240 | |
| 241 | * "git difftool --dir-diff" learned to honor the "--trust-exit-code" |
| 242 | option; it used to always exit with 0 and signalled success. |
| 243 | (merge eb84c8b6ce ps/difftool-dir-diff-exit-code later to maint). |
| 244 | |
| 245 | * The code incorrectly attempted to use textconv cache when asked, |
| 246 | even when we are not running in a repository, which has been |
| 247 | corrected. |
| 248 | (merge affe355fe7 jk/textconv-cache-outside-repo-fix later to maint). |
| 249 | |
| 250 | * Remove an empty file that shouldn't have been added in the first |
| 251 | place. |
| 252 | (merge 4f66942215 js/remove-cruft-files later to maint). |
| 253 | |
| 254 | * The logic to access reflog entries by date and number had ugly |
| 255 | corner cases at the boundaries, which have been cleaned up. |
| 256 | (merge 5edd126720 jk/reflog-special-cases-fix later to maint). |
| 257 | |
| 258 | * An error message from "git upload-pack", which responds to "git |
| 259 | fetch" requests, had a trailing NUL in it, which has been |
| 260 | corrected. |
| 261 | (merge 3f4c7a0805 sg/upload-pack-error-message-fix later to maint). |
| 262 | |
| 263 | * Clarify wording in the CodingGuidelines that requires <git-compat-util.h> |
| 264 | to be the first header file. |
| 265 | (merge 4e89f0e07c jc/doc-compat-util later to maint). |
| 266 | |
| 267 | * "git commit -v --cleanup=scissors" used to add the scissors line |
| 268 | twice in the log message buffer, which has been corrected. |
| 269 | (merge e90cc075cc jt/commit-redundant-scissors-fix later to maint). |
| 270 | |
| 271 | * A custom remote helper no longer cannot access the newly created |
| 272 | repository during "git clone", which is a regression in Git 2.44. |
| 273 | This has been corrected. |
| 274 | (merge 199f44cb2e ps/remote-helper-repo-initialization-fix later to maint). |
| 275 | |
| 276 | * Various parts of upload-pack have been updated to bound the resource |
| 277 | consumption relative to the size of the repository to protect from |
| 278 | abusive clients. |
| 279 | (merge 6cd05e768b jk/upload-pack-bounded-resources later to maint). |
| 280 | |
| 281 | * The upload-pack program, when talking over v2, accepted the |
| 282 | packfile-uris protocol extension from the client, even if it did |
| 283 | not advertise the capability, which has been corrected. |
| 284 | (merge a922bfa3b5 jk/upload-pack-v2-capability-cleanup later to maint). |
| 285 | |
| 286 | * Make sure failure return from merge_bases_many() is properly caught. |
| 287 | (merge 25fd20eb44 js/merge-base-with-missing-commit later to maint). |
| 288 | |
| 289 | * FSMonitor client code was confused when FSEvents were given in a |
| 290 | different case on a case-insensitive filesystem, which has been |
| 291 | corrected. |
| 292 | (merge 29c139ce78 jh/fsmonitor-icase-corner-case-fix later to maint). |
| 293 | |
| 294 | * The "core.commentChar" configuration variable only allows an ASCII |
| 295 | character, which was not clearly documented, which has been |
| 296 | corrected. |
| 297 | (merge fb7c556f58 kh/doc-commentchar-is-a-byte later to maint). |
| 298 | |
| 299 | * With release 2.44 we got rid of all uses of test_i18ngrep and there |
| 300 | is no in-flight topic that adds a new use of it. Make a call to |
| 301 | test_i18ngrep a hard failure, so that we can remove it at the end |
| 302 | of this release cycle. |
| 303 | (merge 381a83dfa3 jc/test-i18ngrep later to maint). |
| 304 | |
| 305 | * The command line completion script (in contrib/) learned to |
| 306 | complete "git reflog" better. |
| 307 | (merge 1284f9cc11 rj/complete-reflog later to maint). |
| 308 | |
| 309 | * The logic to complete the command line arguments to "git worktree" |
| 310 | subcommand (in contrib/) has been updated to correctly honor things |
| 311 | like "git -C dir" etc. |
| 312 | (merge 3574816d98 rj/complete-worktree-paths-fix later to maint). |
| 313 | |
| 314 | * When git refuses to create a branch because the proposed branch |
| 315 | name is not a valid refname, an advice message is given to refer |
| 316 | the user to exact naming rules. |
| 317 | (merge 8fbd903e58 kh/branch-ref-syntax-advice later to maint). |
| 318 | |
| 319 | * Code simplification by getting rid of code that sets an environment |
| 320 | variable that is no longer used. |
| 321 | (merge 72a8d3f027 pw/rebase-i-ignore-cherry-pick-help-environment later to maint). |
| 322 | |
| 323 | * The code to find the effective end of log messages can fall into an |
| 324 | endless loop, which has been corrected. |
| 325 | (merge 2541cba2d6 fs/find-end-of-log-message-fix later to maint). |
| 326 | |
| 327 | * Mark-up used in the documentation has been improved for |
| 328 | consistency. |
| 329 | (merge 45d5ed3e50 ja/doc-markup-fixes later to maint). |
| 330 | |
| 331 | * The status.showUntrackedFiles configuration variable was |
| 332 | incorrectly documented to accept "false", which has been corrected. |
| 333 | |
| 334 | * Leaks from "git restore" have been plugged. |
| 335 | (merge 2f64da0790 rj/restore-plug-leaks later to maint). |
| 336 | |
| 337 | * "git bugreport --no-suffix" was not supported and instead |
| 338 | segfaulted, which has been corrected. |
| 339 | (merge b3b57c69da js/bugreport-no-suffix-fix later to maint). |
| 340 | |
| 341 | * The documentation for "%(trailers[:options])" placeholder in the |
| 342 | "--pretty" option of commands in the "git log" family has been |
| 343 | updated. |
| 344 | (merge bff85a338c bl/doc-key-val-sep-fix later to maint). |
| 345 | |
| 346 | * "git checkout --conflict=bad" reported a bad conflictStyle as if it |
| 347 | were given to a configuration variable; it has been corrected to |
| 348 | report that the command line option is bad. |
| 349 | (merge 5a99c1ac1a pw/checkout-conflict-errorfix later to maint). |
| 350 | |
| 351 | * Code clean-up in the "git log" machinery that implements custom log |
| 352 | message formatting. |
| 353 | (merge 1c10b8e5b0 jk/pretty-subject-cleanup later to maint). |
| 354 | |
| 355 | * "git config" corrupted literal HT characters written in the |
| 356 | configuration file as part of a value, which has been corrected. |
| 357 | (merge e6895c3f97 ds/config-internal-whitespace-fix later to maint). |
| 358 | |
| 359 | * A unit test for reftable code tried to enumerate all files in a |
| 360 | directory after reftable operations and expected to see nothing but |
| 361 | the files it wanted to leave there, but was fooled by .nfs* cruft |
| 362 | files left, which has been corrected. |
| 363 | (merge 0068aa7946 ps/reftable-unit-test-nfs-workaround later to maint). |
| 364 | |
| 365 | * The implementation and documentation of "object-format" option |
| 366 | exchange between the Git itself and its remote helpers did not |
| 367 | quite match, which has been corrected. |
| 368 | |
| 369 | * The "--pretty=<shortHand>" option of the commands in the "git log" |
| 370 | family, defined as "[pretty] shortHand = <expansion>" should have |
| 371 | been looked up case insensitively, but was not, which has been |
| 372 | corrected. |
| 373 | (merge f999d5188b bl/pretty-shorthand-config-fix later to maint). |
| 374 | |
| 375 | * "git apply" failed to extract the filename the patch applied to, |
| 376 | when the change was about an empty file created in or deleted from |
| 377 | a directory whose name ends with a SP, which has been corrected. |
| 378 | (merge 776ffd1a30 jc/apply-parse-diff-git-header-names-fix later to maint). |
| 379 | |
| 380 | * Update a more recent tutorial doc. |
| 381 | (merge 95ab557b4b dg/myfirstobjectwalk-updates later to maint). |
| 382 | |
| 383 | * The test script had an incomplete and ineffective attempt to avoid |
| 384 | clobbering the testing user's real crontab (and its equivalents), |
| 385 | which has been completed. |
| 386 | (merge 73cb87773b es/test-cron-safety later to maint). |
| 387 | |
| 388 | * Use advice_if_enabled() API to rewrite a simple pattern to |
| 389 | call advise() after checking advice_enabled(). |
| 390 | (merge 6412d01527 rj/use-adv-if-enabled later to maint). |
| 391 | |
| 392 | * Another "set -u" fix for the bash prompt (in contrib/) script. |
| 393 | (merge d7805bc743 vs/complete-with-set-u-fix later to maint). |
| 394 | |
| 395 | * "git checkout/switch --detach foo", after switching to the detached |
| 396 | HEAD state, gave the tracking information for the 'foo' branch, |
| 397 | which was pointless. |
| 398 | |
| 399 | * "git apply" has been updated to lift the hardcoded pathname length |
| 400 | limit, which in turn allowed a mksnpath() function that is no |
| 401 | longer used. |
| 402 | (merge 708f7e0590 rs/apply-lift-path-length-limit later to maint). |
| 403 | |
| 404 | * A file descriptor leak in an error codepath, used when "git apply |
| 405 | --reject" fails to create the *.rej file, has been corrected. |
| 406 | (merge 2b1f456adf rs/apply-reject-fd-leakfix later to maint). |
| 407 | |
| 408 | * A config parser callback function fell through instead of returning |
| 409 | after recognising and processing a variable, wasting cycles, which |
| 410 | has been corrected. |
| 411 | (merge a816ccd642 ds/fetch-config-parse-microfix later to maint). |
| 412 | |
| 413 | * Fix was added to work around a regression in libcURL 8.7.0 (which has |
| 414 | already been fixed in their tip of the tree). |
| 415 | (merge 92a209bf24 jk/libcurl-8.7-regression-workaround later to maint). |
| 416 | |
| 417 | * The variable that holds the value read from the core.excludefile |
| 418 | configuration variable used to leak, which has been corrected. |
| 419 | (merge 0e0fefb29f jc/unleak-core-excludesfile later to maint). |
| 420 | |
| 421 | * vreportf(), which is used by error() and friends, has been taught |
| 422 | to give the error message printf-format string when its vsnprintf() |
| 423 | call fails, instead of showing nothing useful to identify the |
| 424 | nature of the error. |
| 425 | (merge c63adab961 rs/usage-fallback-to-show-message-format later to maint). |
| 426 | |
| 427 | * Adjust to an upcoming changes to GNU make that breaks our Makefiles. |
| 428 | (merge 227b8fd902 tb/make-indent-conditional-with-non-spaces later to maint). |
| 429 | |
| 430 | * Git 2.44 introduced a regression that makes the updated code to |
| 431 | barf in repositories with multi-pack index written by older |
| 432 | versions of Git, which has been corrected. |
| 433 | |
| 434 | * When .git/rr-cache/ rerere database gets corrupted or rerere is fed to |
| 435 | work on a file with conflicted hunks resolved incompletely, the rerere |
| 436 | machinery got confused and segfaulted, which has been corrected. |
| 437 | (merge 167395bb47 mr/rerere-crash-fix later to maint). |
| 438 | |
| 439 | * The "receive-pack" program (which responds to "git push") was not |
| 440 | converted to run "git maintenance --auto" when other codepaths that |
| 441 | used to run "git gc --auto" were updated, which has been corrected. |
| 442 | (merge 7bf3057d9c ps/run-auto-maintenance-in-receive-pack later to maint). |
| 443 | |
| 444 | * Other code cleanup, docfix, build fix, etc. |
| 445 | (merge f0e578c69c rs/use-xstrncmpz later to maint). |
| 446 | (merge 83e6eb7d7a ba/credential-test-clean-fix later to maint). |
| 447 | (merge 64562d784d jb/doc-interactive-singlekey-do-not-need-perl later to maint). |
| 448 | (merge c431a235e2 cp/t9146-use-test-path-helpers later to maint). |
| 449 | (merge 82d75402d5 ds/doc-send-email-capitalization later to maint). |
| 450 | (merge 41bff66e35 jc/doc-add-placeholder-fix later to maint). |
| 451 | (merge 6835f0efe9 jw/remote-doc-typofix later to maint). |
| 452 | (merge 244001aa20 hs/rebase-not-in-progress later to maint). |
| 453 | (merge 2ca6c07db2 jc/no-include-of-compat-util-from-headers later to maint). |
| 454 | (merge 87bd7fbb9c rs/fetch-simplify-with-starts-with later to maint). |
| 455 | (merge f39addd0d9 rs/name-rev-with-mempool later to maint). |
| 456 | (merge 9a97b43e03 rs/submodule-prefix-simplify later to maint). |
| 457 | (merge 40b8076462 ak/rebase-autosquash later to maint). |
| 458 | (merge 3223204456 eg/add-uflags later to maint). |
| 459 | (merge 5f78d52dce es/config-doc-sort-sections later to maint). |
| 460 | (merge 781fb7b4c2 as/option-names-in-messages later to maint). |
| 461 | (merge 51d41dc243 jk/doc-remote-helpers-markup-fix later to maint). |
| 462 | (merge e1aaf309db pb/ci-win-artifact-names-fix later to maint). |
| 463 | (merge ad538c61da jc/index-pack-fsck-levels later to maint). |
| 464 | (merge 67471bc704 ja/doc-formatting-fix later to maint). |
| 465 | (merge 86f9ce7dd6 bl/doc-config-fixes later to maint). |
| 466 | (merge 0d527842b7 az/grep-group-error-message-update later to maint). |
| 467 | (merge 7c43bdf07b rs/strbuf-expand-bad-format later to maint). |
| 468 | (merge 8b68b48d5c ds/typofix-core-config-doc later to maint). |
| 469 | (merge 39bb692152 rs/imap-send-use-xsnprintf later to maint). |
| 470 | (merge 8d320cec60 jc/t2104-style-fixes later to maint). |
| 471 | (merge b4454d5a7b pw/t3428-cleanup later to maint). |
| 472 | (merge 84a7c33a4b pf/commitish-committish later to maint). |
| 473 | (merge 8882ee9d68 la/mailmap-entry later to maint). |
| 474 | (merge 44bdba2fa6 rs/no-openssl-compilation-fix-on-macos later to maint). |
| 475 | (merge f412d72c19 yb/replay-doc-linkfix later to maint). |
| 476 | (merge 5da40be8d7 xx/rfc2822-date-format-in-doc later to maint). |