What's cooking (2025/08 #10)
Junio C Hamano committed
Aug 22, 2025 at 13:58 UTC
dc4cc3d7e8ceb7f038e61ffc34b5f499489cc746
1 file changed
+354
-319
whats-cooking.txt
+354
-319
@@ -1,10 +1,10 @@
1
To: git@vger.kernel.org
2
-Subject: What's cooking in git.git (Aug 2025, #09; Wed, 20)
3
-X-master-at: c44beea485f0f2feaf460e2ac87fdd5608d63cf0
4
-X-next-at: 9569e192d092ed4656ac7048d8d835ab1ca97d2c
2
+Subject: What's cooking in git.git (Aug 2025, #10; Fri, 22)
3
+X-master-at: 1fa68948c3d76328236cac73d2adf33c905bd8e3
4
+X-next-at: d7df087d1abd30a578bb11da1d7fcc5f9bee7521
5
Bcc: lwn@lwn.net, gitster@pobox.com
6
7
-What's cooking in git.git (Aug 2025, #09; Wed, 20)
7
+What's cooking in git.git (Aug 2025, #10; Fri, 22)
8
--------------------------------------------------
9
10
Here are the topics that have been cooking in my tree. Commits
@@ -49,50 +49,341 @@ Release tarballs are available at:
49
50
https://www.kernel.org/pub/software/scm/git/
51
52
+--------------------------------------------------
53
+[Graduated to 'master']
54
+
55
+* ac/deglobal-fmt-merge-log-config (2025-08-10) 2 commits
56
+ (merged to 'next' on 2025-08-13 at c6c74fb8f0)
57
+ + builtin/fmt-merge-msg: stop depending on 'the_repository'
58
+ + environment: remove the global variable 'merge_log_config'
59
+
60
+ Code clean-up.
61
+ source: <cover.1754868681.git.ayu.chandekar@gmail.com>
62
+
63
+
64
+* dl/push-missing-object-error (2025-08-08) 3 commits
65
+ (merged to 'next' on 2025-08-11 at ad69d77794)
66
+ + remote.c: convert if-else ladder to switch
67
+ + remote.c: remove BUG in show_push_unqualified_ref_name_error()
68
+ + t5516: remove surrounding empty lines in test bodies
69
+
70
+ "git push" had a code path that led to BUG() but it should have
71
+ been a die(), as it is a response to a usual but invalid end-user
72
+ action to attempt pushing an object that does not exist.
73
+ cf. <xmqqo6spiyqp.fsf@gitster.g>
74
+ source: <cover.1754637849.git.liu.denton@gmail.com>
75
+
76
+
77
+* en/ort-rename-fixes (2025-08-06) 7 commits
78
+ (merged to 'next' on 2025-08-12 at 02536ed675)
79
+ + merge-ort: fix directory rename on top of source of other rename/delete
80
+ + merge-ort: fix incorrect file handling
81
+ + merge-ort: clarify the interning of strings in opt->priv->path
82
+ + t6423: fix missed staging of file in testcases 12i,12j,12k
83
+ + t6423: document two bugs with rename-to-self testcases
84
+ + merge-ort: drop unnecessary temporary in check_for_directory_rename()
85
+ + merge-ort: update comments to modern testfile location
86
+
87
+ Various bugs about rename handling in "ort" merge strategy have
88
+ been fixed.
89
+ source: <pull.1943.v3.git.1754522122.gitgitgadget@gmail.com>
90
+
91
+
92
+* gh/git-jump-pathname-with-sp (2025-08-11) 1 commit
93
+ (merged to 'next' on 2025-08-13 at a99311e231)
94
+ + git-jump: make `diff` work with filenames containing spaces
95
+
96
+ "git jump" (in contrib/) fails to parse the diff header correctly
97
+ when a file has a space in its name, which has been corrected.
98
+ source: <pull.1950.v2.git.1754913323810.gitgitgadget@gmail.com>
99
+
100
+
101
+* jc/diff-no-index-in-subdir (2025-08-09) 1 commit
102
+ (merged to 'next' on 2025-08-13 at 956899dc16)
103
+ + diff: --no-index should ignore the worktree
104
+
105
+ "git diff --no-index" run inside a subdirectory under control of a
106
+ Git repository operated at the top of the working tree and stripped
107
+ the prefix from the output, and oddballs like "-" (stdin) did not
108
+ work correctly because of it. Correct the set-up by undoing what
109
+ the set-up sequence did to cwd and prefix.
110
+ source: <xmqq1ppk58ob.fsf@gitster.g>
111
+
112
+
113
+* jc/strbuf-split (2025-07-31) 13 commits
114
+ (merged to 'next' on 2025-08-11 at ddf662f7e9)
115
+ + trace2: do not use strbuf_split*()
116
+ + trace2: trim_trailing_newline followed by trim is a no-op
117
+ + sub-process: do not use strbuf_split*()
118
+ + environment: do not use strbuf_split*()
119
+ + config: do not use strbuf_split()
120
+ + notes: do not use strbuf_split*()
121
+ + merge-tree: do not use strbuf_split*()
122
+ + clean: do not use strbuf_split*() [part 2]
123
+ + clean: do not pass the whole structure when it is not necessary
124
+ + clean: do not use strbuf_split*() [part 1]
125
+ + clean: do not pass strbuf by value
126
+ + wt-status: avoid strbuf_split*()
127
+ + Merge branch 'jc/string-list-split' into jc/strbuf-split
128
+ (this branch uses jc/string-list-split.)
129
+
130
+ Arrays of strbuf is often a wrong data structure to use, and
131
+ strbuf_split*() family of functions that create them often have
132
+ better alternatives.
133
+
134
+ Update several code paths and replace strbuf_split*().
135
+ source: <20250731225433.4028872-1-gitster@pobox.com>
136
+
137
+
138
+* jc/string-list-split (2025-08-01) 7 commits
139
+ (merged to 'next' on 2025-08-11 at 160ff9d174)
140
+ + string-list: split-then-remove-empty can be done while splitting
141
+ + string-list: optionally omit empty string pieces in string_list_split*()
142
+ + diff: simplify parsing of diff.colormovedws
143
+ + string-list: optionally trim string pieces split by string_list_split*()
144
+ + string-list: unify string_list_split* functions
145
+ + string-list: align string_list_split() with its _in_place() counterpart
146
+ + string-list: report programming error with BUG
147
+ (this branch is used by jc/strbuf-split.)
148
+
149
+ string_list_split*() family of functions have been extended to
150
+ simplify common use cases.
151
+ source: <20250801220423.1230969-1-gitster@pobox.com>
152
+
153
+
154
+* js/rebase-i-allow-drop-on-a-merge (2025-08-06) 1 commit
155
+ (merged to 'next' on 2025-08-07 at bc44e9dc1b)
156
+ + rebase -i: permit 'drop' of a merge commit
157
+
158
+ During interactive rebase, using 'drop' on a merge commit lead to
159
+ an error, which was incorrect.
160
+ source: <37f6e34c-91aa-4e55-88e1-019d2e042df3@kdbg.org>
161
+
162
+
163
+* kh/doc-git-log-markup-fix (2025-08-08) 1 commit
164
+ (merged to 'next' on 2025-08-12 at 1336146ed4)
165
+ + doc: git-log: fix description list
166
+
167
+ Doc update.
168
+ source: <aaa1734189ec8bab7cfa0965132e3d8e5909b1af.1754660514.git.code@khaugsbakk.name>
169
+
170
+
171
+* kr/clone-synopsis-fix (2025-08-11) 1 commit
172
+ (merged to 'next' on 2025-08-13 at b0d634ef29)
173
+ + docs: remove stray bracket from git-clone synopsis
174
+
175
+ Doc fix.
176
+ source: <pull.2023.v3.git.git.1754949872593.gitgitgadget@gmail.com>
177
+
178
+
179
+* ly/changed-path-traversal-with-magic-pathspec (2025-08-10) 1 commit
180
+ (merged to 'next' on 2025-08-12 at 0f929dcec7)
181
+ + bloom: enable bloom filter with wildcard pathspec in revision traversal
182
+
183
+ Revision traversal limited with pathspec, like "git log dir/*",
184
+ used to ignore changed-paths Bloom filter when the pathspec
185
+ contained wildcards; now they take advantage of the filter when
186
+ they can.
187
+ source: <20250811060137.75135-1-yldhome2d2@gmail.com>
188
+
189
+
190
+* ly/diff-name-only-with-diff-from-content (2025-08-07) 1 commit
191
+ (merged to 'next' on 2025-08-13 at 662b1ed5c5)
192
+ + diff: ensure consistent diff behavior with ignore options
193
+
194
+ Various options to "git diff" that makes comparison ignore certain
195
+ aspects of the differences (like "space changes are ignored",
196
+ "differences in lines that match these regular expressions are
197
+ ignored") did not work well with "--name-only" and friends.
198
+ source: <20250808033019.78817-1-yldhome2d2@gmail.com>
199
+
200
+
201
+* ms/refs-list (2025-08-05) 6 commits
202
+ (merged to 'next' on 2025-08-13 at 3f0791145b)
203
+ + t: add test for git refs list subcommand
204
+ + t6300: refactor tests to be shareable
205
+ + builtin/refs: add list subcommand
206
+ + builtin/for-each-ref: factor out core logic into a helper
207
+ + builtin/for-each-ref: align usage string with the man page
208
+ + doc: factor out common option
209
+
210
+ The "list" subcommand of "git refs" acts as a front-end for
211
+ "git for-each-ref".
212
+ source: <20250805092758.5321-1-meetsoni3017@gmail.com>
213
+
214
+
215
+* ps/reflog-migrate-fixes (2025-08-05) 9 commits
216
+ (merged to 'next' on 2025-08-07 at 8068e2ad68)
217
+ + refs: fix invalid old object IDs when migrating reflogs
218
+ + refs: stop unsetting REF_HAVE_OLD for log-only updates
219
+ + refs/files: detect race when generating reflog entry for HEAD
220
+ + refs: fix identity for migrated reflogs
221
+ + ident: fix type of string length parameter
222
+ + builtin/reflog: implement subcommand to write new entries
223
+ + refs: export `ref_transaction_update_reflog()`
224
+ + builtin/reflog: improve grouping of subcommands
225
+ + Documentation/git-reflog: convert to use synopsis type
226
+ (this branch is used by jk/no-clobber-dangling-symref-with-fetch and ps/remote-rename-fix.)
227
+
228
+ "git refs migrate" to migrate the reflog entries from a refs
229
+ backend to another had a handful of bugs squashed.
230
+ source: <20250806-pks-reflog-append-v6-0-a50839653766@pks.im>
231
+
232
+
233
+* ps/remote-rename-fix (2025-07-31) 7 commits
234
+ (merged to 'next' on 2025-08-07 at 227d2faf29)
235
+ + builtin/remote: only iterate through refs that are to be renamed
236
+ + builtin/remote: rework how remote refs get renamed
237
+ + builtin/remote: determine whether refs need renaming early on
238
+ + builtin/remote: fix sign comparison warnings
239
+ + refs: simplify logic when migrating reflog entries
240
+ + refs: pass refname when invoking reflog entry callback
241
+ + Merge branch 'ps/reflog-migrate-fixes' into ps/remote-rename-fix
242
+ (this branch uses ps/reflog-migrate-fixes.)
243
+
244
+ "git remote rename origin upstream" failed to move origin/HEAD to
245
+ upstream/HEAD when origin/HEAD is unborn and performed other
246
+ renames extremely inefficiently, which has been corrected.
247
+ source: <20250731-pks-remote-rename-improvements-v2-0-dda6f083674d@pks.im>
248
+
249
+
250
+* rj/t6137-cygwin-fix (2025-08-08) 1 commit
251
+ (merged to 'next' on 2025-08-12 at f5acbbb35a)
252
+ + t6137-*.sh: fix test failure on cygwin
253
+
254
+ Test fix for breakage introduced in Git 2.50.
255
+ source: <5514f2fd-3307-42c8-97ac-bc2147a7ba41@ramsayjones.plus.com>
256
+
257
+
258
+* rs/describe-with-prio-queue (2025-08-03) 2 commits
259
+ (merged to 'next' on 2025-08-07 at 5ebcaaf8b8)
260
+ + describe: use prio_queue_replace()
261
+ + describe: use prio_queue
262
+
263
+ "git describe" has been optimized by using better data structure.
264
+ source: <36d5b59a-a99a-4a6f-b637-dfb0b760660f@web.de>
265
+
266
+
267
+* ua/t1517-short-help-tests (2025-08-07) 3 commits
268
+ (merged to 'next' on 2025-08-12 at 55d20e1985)
269
+ + t5304: move `prune -h` test from t1517
270
+ + t5200: move `update-server-info -h` test from t1517
271
+ + t/t1517: automate `git subcmd -h` tests outside a repository
272
+ (this branch is used by ad/t1517-short-help-tests-fix and dk/help-all.)
273
+
274
+ Test shuffling.
275
+ source: <20250808010651.591906-1-usmanakinyemi202@gmail.com>
276
+
277
--------------------------------------------------
278
[New Topics]
279
280
+* lo/repo-info-step-2 (2025-08-20) 3 commits
281
+ - repo: add the field objects.format
282
+ - repo: add the flag -z as an alias for --format=nul
283
+ - Merge branch 'lo/repo-info' into lo/repo-info-step-2
284
+ (this branch uses lo/repo-info.)
285
+
286
+ "repo info" learns a short-hand option "-z" that is the same as
287
+ "--format=nul", and learns to report the objects format used in the
288
+ repository.
289
+
290
+ Expecting a reroll.
291
+ cf. <6186055.lOV4Wx5bFT@cayenne>
292
+ source: <20250820144247.79197-1-lucasseikioshiro@gmail.com>
293
+
294
+
295
+* jc/doc-includeif-hasconfig-remote-url-fix (2025-08-21) 1 commit
296
+ - config: document includeIf conditions consistently
297
+
298
+ Doc mark-up fix.
299
+
300
+ Will merge to 'next'?
301
+ source: <xmqqldnc4stv.fsf@gitster.g>
302
+
303
+
304
+* jk/add-i-color (2025-08-21) 4 commits
305
+ - contrib/diff-highlight: mention interactive.diffFilter
306
+ - add-interactive: manually fall back color config to color.ui
307
+ - add-interactive: respect color.diff for diff coloring
308
+ - stash: pass --no-color to diff-tree child processes
309
+
310
+ Some among "git add -p" and friends ignored color.diff and/or
311
+ color.ui configuration variables, which is an old regression, which
312
+ has been corrected.
313
+
314
+ Will merge to 'next'?
315
+ source: <20250821070740.GA3356411@coredump.intra.peff.net>
316
+
317
+
318
+* jt/de-global-bulk-checkin (2025-08-21) 4 commits
319
+ - bulk-checkin: use repository variable from transaction
320
+ - bulk-checkin: require transaction for index_blob_bulk_checkin()
321
+ - bulk-checkin: remove global transaction state
322
+ - bulk-checkin: introduce object database transaction structure
323
+
324
+ The bulk-checkin code used to depend on a file-scope static
325
+ singleton variable, which has been updated to pass an instance
326
+ throughout the callchain.
327
+
328
+ Will merge to 'next'?
329
+ source: <20250821232249.319427-1-jltobler@gmail.com>
330
+
331
+
332
+* kh/doc-interpret-trailers-markup-fix (2025-08-22) 1 commit
333
+ - doc: interpret-trailers: close all pairs of single quotes
334
+
335
+ Fix missing single-quote pairs in a documentation page.
336
+
337
+ Will merge to 'next'.
338
+ source: <4eac944102a846695a9f61ead39a5a86361a0532.1755875970.git.code@khaugsbakk.name>
339
+
340
+--------------------------------------------------
341
+[Cooking]
342
+
343
* ar/submodule-gitdir-tweak (2025-08-18) 10 commits
56
- - fixup! t: add gitdir encoding tests
57
- - t: add gitdir encoding tests
58
- - t: move nested gitdir tests to proper location
59
- - submodule: remove validate_submodule_git_dir()
60
- - submodule: encode gitdir paths to avoid conflicts
61
- - strbuf: bring back is_rfc3986_unreserved
62
- - t: submodules: add basic mixed gitdir path tests
63
- - submodule: add gitdir path config override
64
- - submodule: create new gitdirs under submodules path
65
- - submodule--helper: use submodule_name_to_gitdir in add_submodule
344
+ . fixup! t: add gitdir encoding tests
345
+ . t: add gitdir encoding tests
346
+ . t: move nested gitdir tests to proper location
347
+ . submodule: remove validate_submodule_git_dir()
348
+ . submodule: encode gitdir paths to avoid conflicts
349
+ . strbuf: bring back is_rfc3986_unreserved
350
+ . t: submodules: add basic mixed gitdir path tests
351
+ . submodule: add gitdir path config override
352
+ . submodule: create new gitdirs under submodules path
353
+ . submodule--helper: use submodule_name_to_gitdir in add_submodule
354
355
Avoid local submodule repository directory paths overlapping with
356
each other by encoding submodule names before using them as path
357
components.
358
359
Expecting a reroll.
360
+ cf. <87sehk7r66.fsf@collabora.com>
361
source: <20250816213642.3517822-1-adrian.ratiu@collabora.com>
362
363
364
* jk/describe-blob (2025-08-18) 5 commits
76
- - describe: pass commit to describe_commit()
77
- - describe: handle blob traversal with no commits
78
- - describe: catch unborn branch in describe_blob()
79
- - describe: error if blob not found
80
- - describe: pass oid struct by const pointer
365
+ (merged to 'next' on 2025-08-21 at 671998ff24)
366
+ + describe: pass commit to describe_commit()
367
+ + describe: handle blob traversal with no commits
368
+ + describe: catch unborn branch in describe_blob()
369
+ + describe: error if blob not found
370
+ + describe: pass oid struct by const pointer
371
372
"git describe <blob>" misbehaves and/or crashes in some corner
373
cases, which has been taught to exit with failure gracefully.
374
85
- Will merge to 'next'.
375
+ Will merge to 'master'.
376
source: <20250818205812.GA1018043@coredump.intra.peff.net>
377
378
379
* ds/doc-community-discord (2025-08-20) 1 commit
90
- - doc: add discord to ways of getting help
380
+ (merged to 'next' on 2025-08-21 at 7f9aa8da4e)
381
+ + doc: add discord to ways of getting help
382
383
Discord has been added to the first contribution documentation as
384
another way to ask for help.
385
95
- Will merge to 'next'.
386
+ Will merge to 'master'.
387
source: <pull.2033.v3.git.git.1755679018997.gitgitgadget@gmail.com>
388
389
@@ -102,22 +393,22 @@ Release tarballs are available at:
393
394
Documentation for "git add" has been updated.
395
105
- Comments?
396
+ Will merge to 'next'.
397
source: <pull.1952.v3.git.1755636370.gitgitgadget@gmail.com>
398
399
400
* jk/no-clobber-dangling-symref-with-fetch (2025-08-19) 4 commits
110
- - refs: do not clobber dangling symrefs
111
- - t5510: prefer "git -C" to subshell for followRemoteHEAD tests
112
- - t5510: stop changing top-level working directory
113
- - t5510: make confusing config cleanup more explicit
114
- (this branch uses ps/reflog-migrate-fixes.)
401
+ (merged to 'next' on 2025-08-21 at 29b96663c0)
402
+ + refs: do not clobber dangling symrefs
403
+ + t5510: prefer "git -C" to subshell for followRemoteHEAD tests
404
+ + t5510: stop changing top-level working directory
405
+ + t5510: make confusing config cleanup more explicit
406
407
"git fetch" can clobber a symref that is dangling when the
408
remote-tracking HEAD is set to auto update, which has been
409
corrected.
410
120
- Will merge to 'next'.
411
+ Will merge to 'master'.
412
source: <20250819192004.GA1058857@coredump.intra.peff.net>
413
414
@@ -134,12 +425,13 @@ Release tarballs are available at:
425
426
427
* js/doc-gitk-history (2025-08-19) 1 commit
137
- - doc/gitk: update reference to the external project
428
+ (merged to 'next' on 2025-08-21 at e7e1a08f82)
429
+ + doc/gitk: update reference to the external project
430
431
Manual page for "gitk" is updated with the current maintainer's
432
name.
433
142
- Will merge to 'next'.
434
+ Will merge to 'master'.
435
source: <249056e7-1332-4e6f-8d07-16c80fd4913e@kdbg.org>
436
437
@@ -154,15 +446,14 @@ Release tarballs are available at:
446
447
448
* ja/asciidoc-doctor-verbatim-fixes (2025-08-20) 1 commit
157
- - doc: fix asciidoc format compatibility in pretty-formats.adoc
449
+ (merged to 'next' on 2025-08-22 at 61fb953314)
450
+ + doc: fix asciidoc format compatibility in pretty-formats.adoc
451
452
Doc mark-up fix.
453
161
- Will merge to 'next'.
454
+ Will merge to 'master'.
455
source: <20250820212319.41044-1-jn.avila@free.fr>
456
164
---------------------------------------------------
165
-[Cooking]
457
458
* ds/doc-count-objects-fix (2025-08-14) 1 commit
459
(merged to 'next' on 2025-08-17 at 1740ef34dd)
@@ -175,46 +466,25 @@ Release tarballs are available at:
466
467
468
* ad/t1517-short-help-tests-fix (2025-08-19) 1 commit
178
- - t/t1517: mark tests that fail with GIT_TEST_INSTALLED
179
- (this branch uses ua/t1517-short-help-tests.)
469
+ (merged to 'next' on 2025-08-21 at f686ad352a)
470
+ + t/t1517: mark tests that fail with GIT_TEST_INSTALLED
471
472
Test fix.
473
183
- Will merge to 'next'?
184
- source: <20250816103656.1693607-1-adam@dinwoodie.org>
185
-
186
-
187
-* dk/t7005-editor-updates (2025-08-13) 3 commits
188
- (merged to 'next' on 2025-08-17 at ad0ab2e2a9)
189
- + t7005: sanitize test environment for subsequent tests
190
- + t7005: stop abusing --exec-path
191
- + t7005: use modern test style
192
-
193
- Test clean-up.
194
-
195
- Will merge to 'master'.
196
- source: <20250812170256.71751-1-ben.knoble+github@gmail.com>
197
-
198
-
199
-* kr/clone-synopsis-fix (2025-08-11) 1 commit
200
- (merged to 'next' on 2025-08-13 at b0d634ef29)
201
- + docs: remove stray bracket from git-clone synopsis
202
-
203
- Doc fix.
204
-
205
- Will merge to 'master'.
206
- source: <pull.2023.v3.git.git.1754949872593.gitgitgadget@gmail.com>
207
-
208
-
209
-* ac/deglobal-fmt-merge-log-config (2025-08-10) 2 commits
210
- (merged to 'next' on 2025-08-13 at c6c74fb8f0)
211
- + builtin/fmt-merge-msg: stop depending on 'the_repository'
212
- + environment: remove the global variable 'merge_log_config'
474
+ Will merge to 'master'.
475
+ source: <20250819074631.3303-1-adam@dinwoodie.org>
476
214
- Code clean-up.
477
+
478
+* dk/t7005-editor-updates (2025-08-13) 3 commits
479
+ (merged to 'next' on 2025-08-17 at ad0ab2e2a9)
480
+ + t7005: sanitize test environment for subsequent tests
481
+ + t7005: stop abusing --exec-path
482
+ + t7005: use modern test style
483
+
484
+ Test clean-up.
485
486
Will merge to 'master'.
217
- source: <cover.1754868681.git.ayu.chandekar@gmail.com>
487
+ source: <20250812170256.71751-1-ben.knoble+github@gmail.com>
488
489
490
* jc/longer-disambiguation-fix (2025-08-14) 1 commit
@@ -228,21 +498,6 @@ Release tarballs are available at:
498
source: <xmqqh5ya6iua.fsf_-_@gitster.g>
499
500
231
-* dl/push-missing-object-error (2025-08-08) 3 commits
232
- (merged to 'next' on 2025-08-11 at ad69d77794)
233
- + remote.c: convert if-else ladder to switch
234
- + remote.c: remove BUG in show_push_unqualified_ref_name_error()
235
- + t5516: remove surrounding empty lines in test bodies
236
-
237
- "git push" had a code path that led to BUG() but it should have
238
- been a die(), as it is a response to a usual but invalid end-user
239
- action to attempt pushing an object that does not exist.
240
-
241
- Will merge to 'master'.
242
- cf. <xmqqo6spiyqp.fsf@gitster.g>
243
- source: <cover.1754637849.git.liu.denton@gmail.com>
244
-
245
-
501
* ja/doc-lint-sections-and-synopsis (2025-08-11) 6 commits
502
(merged to 'next' on 2025-08-17 at 413ff100cd)
503
+ doc lint: check that synopsis manpages have synopsis inlines
@@ -259,56 +514,6 @@ Release tarballs are available at:
514
source: <pull.1945.v3.git.1754945600.gitgitgadget@gmail.com>
515
516
262
-* js/rebase-i-allow-drop-on-a-merge (2025-08-06) 1 commit
263
- (merged to 'next' on 2025-08-07 at bc44e9dc1b)
264
- + rebase -i: permit 'drop' of a merge commit
265
-
266
- During interactive rebase, using 'drop' on a merge commit lead to
267
- an error, which was incorrect.
268
-
269
- Will merge to 'master'.
270
- source: <37f6e34c-91aa-4e55-88e1-019d2e042df3@kdbg.org>
271
-
272
-
273
-* ms/refs-list (2025-08-05) 6 commits
274
- (merged to 'next' on 2025-08-13 at 3f0791145b)
275
- + t: add test for git refs list subcommand
276
- + t6300: refactor tests to be shareable
277
- + builtin/refs: add list subcommand
278
- + builtin/for-each-ref: factor out core logic into a helper
279
- + builtin/for-each-ref: align usage string with the man page
280
- + doc: factor out common option
281
-
282
- The "list" subcommand of "git refs" acts as a front-end for
283
- "git for-each-ref".
284
-
285
- Will merge to 'master'.
286
- source: <20250805092758.5321-1-meetsoni3017@gmail.com>
287
-
288
-
289
-* kh/doc-git-log-markup-fix (2025-08-08) 1 commit
290
- (merged to 'next' on 2025-08-12 at 1336146ed4)
291
- + doc: git-log: fix description list
292
-
293
- Doc update.
294
-
295
- Will merge to 'master'.
296
- source: <aaa1734189ec8bab7cfa0965132e3d8e5909b1af.1754660514.git.code@khaugsbakk.name>
297
-
298
-
299
-* ly/changed-path-traversal-with-magic-pathspec (2025-08-10) 1 commit
300
- (merged to 'next' on 2025-08-12 at 0f929dcec7)
301
- + bloom: enable bloom filter with wildcard pathspec in revision traversal
302
-
303
- Revision traversal limited with pathspec, like "git log dir/*",
304
- used to ignore changed-paths Bloom filter when the pathspec
305
- contained wildcards; now they take advantage of the filter when
306
- they can.
307
-
308
- Will merge to 'master'.
309
- source: <20250811060137.75135-1-yldhome2d2@gmail.com>
310
-
311
-
517
* ps/commit-graph-wo-globals (2025-08-14) 6 commits
518
(merged to 'next' on 2025-08-17 at e2889596be)
519
+ commit-graph: stop passing in redundant repository
@@ -336,31 +541,6 @@ Release tarballs are available at:
541
source: <20250804073002.1586332-1-toon@iotcl.com>
542
543
339
-* gh/git-jump-pathname-with-sp (2025-08-11) 1 commit
340
- (merged to 'next' on 2025-08-13 at a99311e231)
341
- + git-jump: make `diff` work with filenames containing spaces
342
-
343
- "git jump" (in contrib/) fails to parse the diff header correctly
344
- when a file has a space in its name, which has been corrected.
345
-
346
- Will merge to 'master'.
347
- source: <pull.1950.v2.git.1754913323810.gitgitgadget@gmail.com>
348
-
349
-
350
-* jc/diff-no-index-in-subdir (2025-08-09) 1 commit
351
- (merged to 'next' on 2025-08-13 at 956899dc16)
352
- + diff: --no-index should ignore the worktree
353
-
354
- "git diff --no-index" run inside a subdirectory under control of a
355
- Git repository operated at the top of the working tree and stripped
356
- the prefix from the output, and oddballs like "-" (stdin) did not
357
- work correctly because of it. Correct the set-up by undoing what
358
- the set-up sequence did to cwd and prefix.
359
-
360
- Will merge to 'master'.
361
- source: <xmqq1ppk58ob.fsf@gitster.g>
362
-
363
-
544
* je/doc-rebase (2025-08-15) 5 commits
545
- doc: git-rebase: update discussion of internals
546
- doc: git-rebase: move --onto explanation down
@@ -370,33 +550,25 @@ Release tarballs are available at:
550
551
Documentation for "git rebase" has been updated.
552
373
- Will merge to 'next'?
553
+ Expecting a reroll.
554
+ cf. <106c4a6c-9239-4c67-8bed-5ec2c0987f21@app.fastmail.com>
555
source: <pull.1949.v8.git.1755276750.gitgitgadget@gmail.com>
556
557
377
-* rj/t6137-cygwin-fix (2025-08-08) 1 commit
378
- (merged to 'next' on 2025-08-12 at f5acbbb35a)
379
- + t6137-*.sh: fix test failure on cygwin
380
-
381
- Test fix for breakage introduced in Git 2.50.
382
-
383
- Will merge to 'master'.
384
- source: <5514f2fd-3307-42c8-97ac-bc2147a7ba41@ramsayjones.plus.com>
385
-
386
-
558
* ps/reftable-libgit2-cleanup (2025-08-12) 8 commits
388
- - refs/reftable: always reload stacks when creating lock
389
- - reftable: don't second-guess errors from flock interface
390
- - reftable/stack: handle outdated stacks when compacting
391
- - reftable/stack: allow passing flags to `reftable_stack_add()`
392
- - reftable/stack: fix compiler warning due to missing braces
393
- - reftable/stack: reorder code to avoid forward declarations
394
- - reftable/writer: drop Git-specific `QSORT()` macro
395
- - reftable/writer: fix type used for number of records
559
+ (merged to 'next' on 2025-08-21 at ff82e3fa11)
560
+ + refs/reftable: always reload stacks when creating lock
561
+ + reftable: don't second-guess errors from flock interface
562
+ + reftable/stack: handle outdated stacks when compacting
563
+ + reftable/stack: allow passing flags to `reftable_stack_add()`
564
+ + reftable/stack: fix compiler warning due to missing braces
565
+ + reftable/stack: reorder code to avoid forward declarations
566
+ + reftable/writer: drop Git-specific `QSORT()` macro
567
+ + reftable/writer: fix type used for number of records
568
569
Code clean-ups.
570
399
- Will merge to 'next'?
571
+ Will merge to 'master'.
572
source: <20250812-pks-reftable-fixes-for-libgit2-v3-0-cf3b2267867e@pks.im>
573
574
@@ -417,7 +589,6 @@ Release tarballs are available at:
589
+ builtin: also setup gently for --help-all
590
+ parse-options: refactor flags for usage_with_options_internal
591
+ Merge branch 'ua/t1517-short-help-tests' into dk/help-all
420
- (this branch uses ua/t1517-short-help-tests.)
592
593
"git cmd --help-all" outside repository.
594
@@ -434,30 +605,6 @@ Release tarballs are available at:
605
source: <20250803150059.402017-1-me@linux.beauty>
606
607
437
-* ly/diff-name-only-with-diff-from-content (2025-08-07) 1 commit
438
- (merged to 'next' on 2025-08-13 at 662b1ed5c5)
439
- + diff: ensure consistent diff behavior with ignore options
440
-
441
- Various options to "git diff" that makes comparison ignore certain
442
- aspects of the differences (like "space changes are ignored",
443
- "differences in lines that match these regular expressions are
444
- ignored") did not work well with "--name-only" and friends.
445
-
446
- Will merge to 'master'.
447
- source: <20250808033019.78817-1-yldhome2d2@gmail.com>
448
-
449
-
450
-* rs/describe-with-prio-queue (2025-08-03) 2 commits
451
- (merged to 'next' on 2025-08-07 at 5ebcaaf8b8)
452
- + describe: use prio_queue_replace()
453
- + describe: use prio_queue
454
-
455
- "git describe" has been optimized by using better data structure.
456
-
457
- Will merge to 'master'.
458
- source: <36d5b59a-a99a-4a6f-b637-dfb0b760660f@web.de>
459
-
460
-
608
* ps/object-store-midx-dedup-info (2025-08-11) 11 commits
609
- midx: compute paths via their source
610
- midx: stop duplicating info redundant with its owning source
@@ -473,55 +620,11 @@ Release tarballs are available at:
620
621
Further code clean-up for multi-pack-index code paths.
622
476
- Will merge to 'next'?
623
+ Comments?
624
+ cf. <aKbFNq_pLasQGjbc@pks.im>
625
source: <20250811-b4-pks-midx-deduplicate-source-info-v3-0-e442bdf2b4ad@pks.im>
626
627
480
-* jc/strbuf-split (2025-07-31) 13 commits
481
- (merged to 'next' on 2025-08-11 at ddf662f7e9)
482
- + trace2: do not use strbuf_split*()
483
- + trace2: trim_trailing_newline followed by trim is a no-op
484
- + sub-process: do not use strbuf_split*()
485
- + environment: do not use strbuf_split*()
486
- + config: do not use strbuf_split()
487
- + notes: do not use strbuf_split*()
488
- + merge-tree: do not use strbuf_split*()
489
- + clean: do not use strbuf_split*() [part 2]
490
- + clean: do not pass the whole structure when it is not necessary
491
- + clean: do not use strbuf_split*() [part 1]
492
- + clean: do not pass strbuf by value
493
- + wt-status: avoid strbuf_split*()
494
- + Merge branch 'jc/string-list-split' into jc/strbuf-split
495
- (this branch uses jc/string-list-split.)
496
-
497
- Arrays of strbuf is often a wrong data structure to use, and
498
- strbuf_split*() family of functions that create them often have
499
- better alternatives.
500
-
501
- Update several code paths and replace strbuf_split*().
502
-
503
- Will merge to 'master'.
504
- source: <20250731225433.4028872-1-gitster@pobox.com>
505
-
506
-
507
-* jc/string-list-split (2025-08-01) 7 commits
508
- (merged to 'next' on 2025-08-11 at 160ff9d174)
509
- + string-list: split-then-remove-empty can be done while splitting
510
- + string-list: optionally omit empty string pieces in string_list_split*()
511
- + diff: simplify parsing of diff.colormovedws
512
- + string-list: optionally trim string pieces split by string_list_split*()
513
- + string-list: unify string_list_split* functions
514
- + string-list: align string_list_split() with its _in_place() counterpart
515
- + string-list: report programming error with BUG
516
- (this branch is used by jc/strbuf-split.)
517
-
518
- string_list_split*() family of functions have been extended to
519
- simplify common use cases.
520
-
521
- Will merge to 'master'.
522
- source: <20250801220423.1230969-1-gitster@pobox.com>
523
-
524
-
628
* am/xdiff-hash-tweak (2025-07-28) 2 commits
629
- xdiff: optimize xdl_hash_record_verbatim
630
- xdiff: refactor xdl_hash_record()
@@ -535,25 +638,6 @@ Release tarballs are available at:
638
source: <20250728190520.10962-1-amonakov@ispras.ru>
639
640
538
-* ps/remote-rename-fix (2025-07-31) 7 commits
539
- (merged to 'next' on 2025-08-07 at 227d2faf29)
540
- + builtin/remote: only iterate through refs that are to be renamed
541
- + builtin/remote: rework how remote refs get renamed
542
- + builtin/remote: determine whether refs need renaming early on
543
- + builtin/remote: fix sign comparison warnings
544
- + refs: simplify logic when migrating reflog entries
545
- + refs: pass refname when invoking reflog entry callback
546
- + Merge branch 'ps/reflog-migrate-fixes' into ps/remote-rename-fix
547
- (this branch uses ps/reflog-migrate-fixes.)
548
-
549
- "git remote rename origin upstream" failed to move origin/HEAD to
550
- upstream/HEAD when origin/HEAD is unborn and performed other
551
- renames extremely inefficiently, which has been corrected.
552
-
553
- Will merge to 'master'.
554
- source: <20250731-pks-remote-rename-improvements-v2-0-dda6f083674d@pks.im>
555
-
556
-
641
* ag/send-email-imap-sent (2025-08-11) 2 commits
642
- send-email: enable copying emails to an IMAP folder without actually sending them
643
- send-email: add ability to send a copy of sent emails to an IMAP folder
@@ -565,43 +649,6 @@ Release tarballs are available at:
649
source: <PN3PR01MB9597E8E33868386C997D2563B82BA@PN3PR01MB9597.INDPRD01.PROD.OUTLOOK.COM>
650
651
568
-* en/ort-rename-fixes (2025-08-06) 7 commits
569
- (merged to 'next' on 2025-08-12 at 02536ed675)
570
- + merge-ort: fix directory rename on top of source of other rename/delete
571
- + merge-ort: fix incorrect file handling
572
- + merge-ort: clarify the interning of strings in opt->priv->path
573
- + t6423: fix missed staging of file in testcases 12i,12j,12k
574
- + t6423: document two bugs with rename-to-self testcases
575
- + merge-ort: drop unnecessary temporary in check_for_directory_rename()
576
- + merge-ort: update comments to modern testfile location
577
-
578
- Various bugs about rename handling in "ort" merge strategy have
579
- been fixed.
580
-
581
- Will merge to 'master'.
582
- source: <pull.1943.v3.git.1754522122.gitgitgadget@gmail.com>
583
-
584
-
585
-* ps/reflog-migrate-fixes (2025-08-05) 9 commits
586
- (merged to 'next' on 2025-08-07 at 8068e2ad68)
587
- + refs: fix invalid old object IDs when migrating reflogs
588
- + refs: stop unsetting REF_HAVE_OLD for log-only updates
589
- + refs/files: detect race when generating reflog entry for HEAD
590
- + refs: fix identity for migrated reflogs
591
- + ident: fix type of string length parameter
592
- + builtin/reflog: implement subcommand to write new entries
593
- + refs: export `ref_transaction_update_reflog()`
594
- + builtin/reflog: improve grouping of subcommands
595
- + Documentation/git-reflog: convert to use synopsis type
596
- (this branch is used by jk/no-clobber-dangling-symref-with-fetch and ps/remote-rename-fix.)
597
-
598
- "git refs migrate" to migrate the reflog entries from a refs
599
- backend to another had a handful of bugs squashed.
600
-
601
- Will merge to 'master'.
602
- source: <20250806-pks-reflog-append-v6-0-a50839653766@pks.im>
603
-
604
-
652
* ds/sparse-checkout-clean (2025-07-16) 9 commits
653
- sparse-checkout: make 'clean' clear more files
654
- t: expand tests around sparse merges and clean
@@ -636,19 +683,6 @@ Release tarballs are available at:
683
source: <cover.1753975294.git.phillip.wood@dunelm.org.uk>
684
685
639
-* ua/t1517-short-help-tests (2025-08-07) 3 commits
640
- (merged to 'next' on 2025-08-12 at 55d20e1985)
641
- + t5304: move `prune -h` test from t1517
642
- + t5200: move `update-server-info -h` test from t1517
643
- + t/t1517: automate `git subcmd -h` tests outside a repository
644
- (this branch is used by ad/t1517-short-help-tests-fix and dk/help-all.)
645
-
646
- Test shuffling.
647
-
648
- Will merge to 'master'.
649
- source: <20250808010651.591906-1-usmanakinyemi202@gmail.com>
650
-
651
-
686
* tc/last-modified (2025-08-05) 4 commits
687
- fixup! last-modified: new subcommand to show when files were last modified
688
- last-modified: use Bloom filters when available
@@ -667,6 +701,7 @@ Release tarballs are available at:
701
+ repo: add the field layout.bare
702
+ repo: add the field references.format
703
+ repo: declare the repo command
704
+ (this branch is used by lo/repo-info-step-2.)
705
706
A new subcommand "git repo" gives users a way to grab various
707
repository characteristics.