What's cooking (2021/01 #02)
Junio C Hamano committed
Jan 8, 2021 at 11:19 UTC
8cb6cac5af20456e459e8a9414e05461a3a87edc
1 file changed
+518
-443
whats-cooking.txt
+518
-443
@@ -1,10 +1,10 @@
1
To: git@vger.kernel.org
2
Bcc: lwn@lwn.net
3
-Subject: What's cooking in git.git (Jan 2021, #01; Wed, 6)
4
-X-master-at: 71ca53e8125e36efbda17293c50027d31681a41f
5
-X-next-at: d98b1dd5eaa7327399716162c746c9bd3cac3866
3
+Subject: What's cooking in git.git (Jan 2021, #02; Fri, 8)
4
+X-master-at: 72c4083ddf91b489b7b7b812df67ee8842177d98
5
+X-next-at: b2714ff1a467d5c50f82988d2216cb7d091f5c2b
6
7
-What's cooking in git.git (Jan 2021, #01; Wed, 6)
7
+What's cooking in git.git (Jan 2021, #02; Fri, 8)
8
--------------------------------------------------
9
10
Here are the topics that have been cooking. Commits prefixed with '-' are
@@ -12,8 +12,9 @@ only in 'seen' (formerly 'pu'---proposed updates) while commits prefixed
12
with '+' are in 'next'. The ones marked with '.' do not appear in any of
13
the integration branches, but I am still holding onto them.
14
15
-https://github.com/git/git/runs/1660876025 shows that with a few
16
-topics excluded the tip of 'seen' passes the CI. Yay.
15
+Many topics that have been cooking in the 'next' branch during the
16
+pre-release freeze at the year end have now been merged to the
17
+'master' branch, and the tip of the 'next' branch has been rewound.
18
19
Copies of the source code to Git live in many repositories, and the
20
following is a list of the ones I push into or their mirrors. Some
@@ -46,10 +47,368 @@ Release tarballs are available at:
47
--------------------------------------------------
48
[New Topics]
49
49
-* ab/branch-sort (2021-01-06) 5 commits
50
+* en/ort-directory-rename (2021-01-07) 18 commits
51
+ - merge-ort: fix a directory rename detection bug
52
+ - merge-ort: process_renames() now needs more defensiveness
53
+ - merge-ort: implement apply_directory_rename_modifications()
54
+ - merge-ort: add a new toplevel_dir field
55
+ - merge-ort: implement handle_path_level_conflicts()
56
+ - merge-ort: implement check_for_directory_rename()
57
+ - merge-ort: implement apply_dir_rename() and check_dir_renamed()
58
+ - merge-ort: implement compute_collisions()
59
+ - merge-ort: modify collect_renames() for directory rename handling
60
+ - merge-ort: implement handle_directory_level_conflicts()
61
+ - merge-ort: implement compute_rename_counts()
62
+ - merge-ort: copy get_renamed_dir_portion() from merge-recursive.c
63
+ - merge-ort: add outline of get_provisional_directory_renames()
64
+ - merge-ort: add outline for computing directory renames
65
+ - merge-ort: collect which directories are removed in dirs_removed
66
+ - merge-ort: initialize and free new directory rename data structures
67
+ - merge-ort: add new data structures for directory rename detection
68
+ - Merge branch 'en/merge-ort-3' into en/ort-directory-rename
69
+ (this branch uses en/merge-ort-3.)
70
+
71
+ ORT merge strategy learns to infer "renamed directory" while
72
+ merging.
73
+
74
+
75
+* jk/forbid-lf-in-git-url (2021-01-07) 2 commits
76
+ - fsck: reject .gitmodules git:// urls with newlines
77
+ - git_connect_git(): forbid newlines in host and path
78
+
79
+ Newline characters in the host and path part of git:// URL are
80
+ now forbidden.
81
+
82
+ Will merge to 'next'.
83
+
84
+
85
+* ps/fetch-atomic (2021-01-07) 2 commits
86
+ - fetch: implement support for atomic reference updates
87
+ - fetch: allow passing a transaction to `s_update_ref()`
88
+
89
+ "git fetch" learns to treat ref updates atomically in all-or-none
90
+ fashion, just like "git push" does, with the new "--atomic" option.
91
+
92
+
93
+* jc/sign-off (2021-01-07) 1 commit
94
+ - SubmittingPatches: tighten wording on "sign-off" procedure
95
+
96
+ Doc update.
97
+
98
+ Will merge to 'next'.
99
+
100
+--------------------------------------------------
101
+[Graduated to 'master']
102
+
103
+* ab/trailers-extra-format (2020-12-09) 5 commits
104
+ (merged to 'next' on 2020-12-14 at 9fc731944e)
105
+ + pretty format %(trailers): add a "key_value_separator"
106
+ + pretty format %(trailers): add a "keyonly"
107
+ + pretty-format %(trailers): fix broken standalone "valueonly"
108
+ + pretty format %(trailers) doc: avoid repetition
109
+ + pretty format %(trailers) test: split a long line
110
+
111
+ The "--format=%(trailers)" mechanism gets enhanced to make it
112
+ easier to design output for machine consumption.
113
+
114
+
115
+* en/merge-ort-2 (2020-12-13) 7 commits
116
+ (merged to 'next' on 2020-12-21 at ef5b184349)
117
+ + merge-ort: add modify/delete handling and delayed output processing
118
+ + merge-ort: add die-not-implemented stub handle_content_merge() function
119
+ + merge-ort: add function grouping comments
120
+ + merge-ort: add a paths_to_free field to merge_options_internal
121
+ + merge-ort: add a path_conflict field to merge_options_internal
122
+ + merge-ort: add a clear_internal_opts helper
123
+ + merge-ort: add a few includes
124
+ (this branch is used by en/merge-ort-3, en/merge-ort-recursive and en/ort-conflict-handling; uses en/merge-ort-impl.)
125
+
126
+ More "ORT" merge strategy.
127
+
128
+
129
+* en/merge-ort-impl (2020-12-13) 21 commits
130
+ (merged to 'next' on 2020-12-21 at c551d7bda9)
131
+ + merge-ort: free data structures in merge_finalize()
132
+ + merge-ort: add implementation of record_conflicted_index_entries()
133
+ + tree: enable cmp_cache_name_compare() to be used elsewhere
134
+ + merge-ort: add implementation of checkout()
135
+ + merge-ort: basic outline for merge_switch_to_result()
136
+ + merge-ort: step 3 of tree writing -- handling subdirectories as we go
137
+ + merge-ort: step 2 of tree writing -- function to create tree object
138
+ + merge-ort: step 1 of tree writing -- record basenames, modes, and oids
139
+ + merge-ort: have process_entries operate in a defined order
140
+ + merge-ort: add a preliminary simple process_entries() implementation
141
+ + merge-ort: avoid recursing into identical trees
142
+ + merge-ort: record stage and auxiliary info for every path
143
+ + merge-ort: compute a few more useful fields for collect_merge_info
144
+ + merge-ort: avoid repeating fill_tree_descriptor() on the same tree
145
+ + merge-ort: implement a very basic collect_merge_info()
146
+ + merge-ort: add an err() function similar to one from merge-recursive
147
+ + merge-ort: use histogram diff
148
+ + merge-ort: port merge_start() from merge-recursive
149
+ + merge-ort: add some high-level algorithm structure
150
+ + merge-ort: setup basic internal data structures
151
+ + Merge branch 'en/strmap' into en/merge-ort-impl
152
+ (this branch is used by en/merge-ort-2, en/merge-ort-3, en/merge-ort-recursive and en/ort-conflict-handling.)
153
+
154
+ The merge backend "done right" starts to emerge.
155
+
156
+
157
+* en/merge-ort-recursive (2020-12-16) 4 commits
158
+ (merged to 'next' on 2020-12-22 at 0dbf60011f)
159
+ + merge-ort: implement merge_incore_recursive()
160
+ + merge-ort: make clear_internal_opts() aware of partial clearing
161
+ + merge-ort: copy a few small helper functions from merge-recursive.c
162
+ + commit: move reverse_commit_list() from merge-recursive
163
+ (this branch uses en/merge-ort-2 and en/merge-ort-impl; is tangled with en/merge-ort-3 and en/ort-conflict-handling.)
164
+
165
+ The ORT merge strategy learned to synthesize virtual ancestor tree
166
+ by recursively merging multiple merge bases together, just like the
167
+ recursive backend has done for years.
168
+
169
+
170
+* es/perf-export-fix (2020-12-22) 1 commit
171
+ (merged to 'next' on 2020-12-22 at d06b0379d9)
172
+ + t/perf: avoid unnecessary test_export() recursion
173
+
174
+ Tweak unneeded recursion from a test framework helper function.
175
+
176
+
177
+* es/worktree-repair-both-moved (2020-12-21) 1 commit
178
+ (merged to 'next' on 2020-12-22 at 9eaae4f5c0)
179
+ + worktree: teach `repair` to fix multi-directional breakage
180
+
181
+ "git worktree repair" learned to deal with the case where both the
182
+ repository and the worktree moved.
183
+
184
+
185
+* fc/pull-merge-rebase (2020-12-15) 5 commits
186
+ (merged to 'next' on 2020-12-21 at acce13e5c4)
187
+ + pull: display default warning only when non-ff
188
+ + pull: correct condition to trigger non-ff advice
189
+ + pull: get rid of unnecessary global variable
190
+ + pull: give the advice for choosing rebase/merge much later
191
+ + pull: refactor fast-forward check
192
+
193
+ When a user does not tell "git pull" to use rebase or merge, the
194
+ command gives a loud message telling a user to choose between
195
+ rebase or merge but creates a merge anyway, forcing users who would
196
+ want to rebase to redo the operation. Fix an early part of this
197
+ problem by tightening the condition to give the message---there is
198
+ no reason to stop or force the user to choose between rebase or
199
+ merge if the history fast-forwards.
200
+
201
+
202
+* fc/t6030-bisect-reset-removes-auxiliary-files (2020-12-21) 1 commit
203
+ (merged to 'next' on 2020-12-22 at 2ab78ef1e1)
204
+ + test: bisect-porcelain: fix location of files
205
+
206
+ A 3-year old test that was not testing anything useful has been
207
+ corrected.
208
+
209
+
210
+* pk/subsub-fetch-fix-take-2 (2020-12-09) 1 commit
211
+ (merged to 'next' on 2020-12-14 at ccc01a5f66)
212
+ + submodules: fix of regression on fetching of non-init subsub-repo
213
+
214
+ "git fetch --recurse-submodules" fix (second attempt).
215
+
216
+
217
+* tb/pack-bitmap (2020-12-08) 24 commits
218
+ (merged to 'next' on 2020-12-15 at 773268c2fb)
219
+ + pack-bitmap-write: better reuse bitmaps
220
+ + pack-bitmap-write: relax unique revwalk condition
221
+ + pack-bitmap-write: use existing bitmaps
222
+ + pack-bitmap: factor out 'add_commit_to_bitmap()'
223
+ + pack-bitmap: factor out 'bitmap_for_commit()'
224
+ + pack-bitmap-write: ignore BITMAP_FLAG_REUSE
225
+ + pack-bitmap-write: build fewer intermediate bitmaps
226
+ + pack-bitmap.c: check reads more aggressively when loading
227
+ + pack-bitmap-write: rename children to reverse_edges
228
+ + t5310: add branch-based checks
229
+ + commit: implement commit_list_contains()
230
+ + bitmap: implement bitmap_is_subset()
231
+ + pack-bitmap-write: fill bitmap with commit history
232
+ + pack-bitmap-write: pass ownership of intermediate bitmaps
233
+ + pack-bitmap-write: reimplement bitmap writing
234
+ + ewah: add bitmap_dup() function
235
+ + ewah: implement bitmap_or()
236
+ + ewah: make bitmap growth less aggressive
237
+ + ewah: factor out bitmap growth
238
+ + rev-list: die when --test-bitmap detects a mismatch
239
+ + t5310: drop size of truncated ewah bitmap
240
+ + pack-bitmap: bounds-check size of cache extension
241
+ + pack-bitmap: fix header size check
242
+ + ewah/ewah_bitmap.c: avoid open-coding ALLOC_GROW()
243
+
244
+ Various improvements to the codepath that writes out pack bitmaps.
245
+
246
+--------------------------------------------------
247
+[Stalled]
248
+
249
+* ss/submodule-add-in-c (2020-12-15) 3 commits
250
+ . t7400: add test to check 'submodule add' for tracked paths
251
+ . submodule: port submodule subcommand 'add' from shell to C
252
+ . dir: change the scope of function 'directory_exists_in_index()'
253
+
254
+ "git submodule add" being rewritten in C.
255
+
256
+ Expecting a reroll.
257
+ The patches are split incorrectly; part of 1/3 belongs to 2/3
258
+ cf. <nycvar.QRO.7.76.6.2012190104140.56@tvgsbejvaqbjf.bet>
259
+ It seems to introduce a segfault on 'seen'.
260
+ cf. <xmqqft3xflw7.fsf@gitster.c.googlers.com>
261
+
262
+
263
+* mt/grep-sparse-checkout (2020-12-06) 10 commits
264
+ - t7817: do not depend on any specific default branch name
265
+ - config: add setting to ignore sparsity patterns in some cmds
266
+ - grep: honor sparse checkout patterns
267
+ - config: correctly read worktree configs in submodules
268
+ - config: make do_git_config_sequence receive a 'struct repository'
269
+ - t/helper/test-config: unify exit labels
270
+ - t/helper/test-config: diagnose missing arguments
271
+ - t/helper/test-config: be consistent with exit codes
272
+ - t1308-config-set: avoid false positives when using test-config
273
+ - doc: grep: unify info on configuration variables
274
+ (this branch is used by mt/rm-sparse-checkout.)
275
+
276
+ "git grep" has been tweaked to be limited to the sparse checkout
277
+ paths.
278
+
279
+ Break out and fast-track bugfix from the remainder of the topic.
280
+ cf. <CABPp-BFkACtF6LHkFJNt9dTOmwfQbf8ZO=BTrPYwPSmbqc9+hg@mail.gmail.com>
281
+
282
+
283
+* mt/rm-sparse-checkout (2020-12-08) 1 commit
284
+ - rm: honor sparse checkout patterns
285
+ (this branch uses mt/grep-sparse-checkout.)
286
+
287
+ "git rm" follows suit to "git grep" to ignore paths outside the
288
+ sparsity pattern when the sparse checkout feature is in use.
289
+
290
+ Need to wait for how these fit in larger picture.
291
+ cf. <CABPp-BGMX3wb7LiS1HkJpGveoW3J1oR0vVHbKTF5+qYLRF+59g@mail.gmail.com>
292
+ cf. <CABPp-BFkACtF6LHkFJNt9dTOmwfQbf8ZO=BTrPYwPSmbqc9+hg@mail.gmail.com>
293
+
294
+
295
+* jk/symlinked-dotgitx-files (2020-10-23) 9 commits
296
+ - docs: document symlink restrictions for .git* files
297
+ - fsck: complain when .gitattributes or .gitignore is a symlink
298
+ - verify_path(): disallow symlinks in .gitattributes and .gitignore
299
+ - t0060: test obscured .gitattributes and .gitignore matching
300
+ - t7450: test .gitmodules symlink matching against obscured names
301
+ - t7450: test verify_path() handling of gitmodules
302
+ - t7415: rename to expand scope
303
+ - fsck_tree(): wrap some long lines
304
+ - fsck_tree(): fix shadowed variable
305
+
306
+ "git fsck" and the corresponding check done during the transport
307
+ learned to ensure that in-tree files like `.gitignore` and
308
+ `.gitattributes` are not symbolic links.
309
+
310
+ It seems that there are real projects with .gitignore recorded as
311
+ symlinks, which may need to loosen the fsck setting. Do we need to
312
+ introduce a class that is separate from symlinked .gitmodules that
313
+ has potential consequences that is more/less grave, so that these
314
+ projects can opt out of the new checks?
315
+
316
+
317
+* sm/curl-retry (2020-10-13) 3 commits
318
+ - http: automatically retry some requests
319
+ - replace CURLOPT_FILE With CURLOPT_WRITEDATA
320
+ - remote-curl: add testing for intelligent retry for HTTP
321
+
322
+ The http transport has been taught to retry a failed request that
323
+ may reasonably be retried.
324
+
325
+ Expecting a reroll.
326
+ cf. <20201015000410.GB328643@google.com>
327
+ cf. <CAM4o00eefXK2CJ_FxwwVPpBKL01JsJANf+SdjCtw_0NVV82L+Q@mail.gmail.com>
328
+
329
+
330
+* sv/t7001-modernize (2020-09-25) 11 commits
331
+ - t7001: move cleanup code from outside the tests into them
332
+ - t7001: use `test` rather than `[`
333
+ - t7001: use here-docs instead of echo
334
+ - t7001: put each command on a separate line
335
+ - t7001: use ': >' rather than 'touch'
336
+ - t7001: change (cd <path> && git foo) to (git -C <path> foo)
337
+ - t7001: remove whitespace after redirect operators
338
+ - t7001: change the style for cd according to subshell
339
+ - t7001: remove unnecessary blank lines
340
+ - t7001: use TAB instead of spaces
341
+ - t7001: convert tests from the old style to the current style
342
+
343
+ Test script modernization.
344
+
345
+ Expecting a reroll.
346
+ cf. <20200925170256.11490-1-shubhunic@gmail.com>
347
+
348
+
349
+* ar/fetch-transfer-ipversion (2020-09-16) 1 commit
350
+ - config: option transfer.ipversion to set transport protocol version for network fetches
351
+
352
+ Adds transfer.ipversion configuration variable.
353
+
354
+ Needs more work.
355
+
356
+
357
+* jc/war-on-dashed-git (2020-12-21) 2 commits
358
+ - fixup??? git: catch an attempt to run "git-foo"
359
+ - git: catch an attempt to run "git-foo"
360
+
361
+ The first step to remove on-disk binaries for built-in subcommands
362
+ by soliciting objections.
363
+
364
+ On hold for now.
365
+
366
+
367
+* mk/use-size-t-in-zlib (2018-10-15) 1 commit
368
+ - zlib.c: use size_t for size
369
+
370
+ The wrapper to call into zlib followed our long tradition to use
371
+ "unsigned long" for sizes of regions in memory, which have been
372
+ updated to use "size_t".
373
+
374
+
375
+* ag/merge-strategies-in-c (2020-11-24) 13 commits
376
+ - sequencer: use the "octopus" merge strategy without forking
377
+ - sequencer: use the "resolve" strategy without forking
378
+ - merge: use the "octopus" strategy without forking
379
+ - merge: use the "resolve" strategy without forking
380
+ - merge-octopus: rewrite in C
381
+ - merge-recursive: move better_branch_name() to merge.c
382
+ - merge-resolve: rewrite in C
383
+ - merge-index: don't fork if the requested program is `git-merge-one-file'
384
+ - merge-index: libify merge_one_path() and merge_all()
385
+ - merge-one-file: rewrite in C
386
+ - update-index: move add_cacheinfo() to read-cache.c
387
+ - t6060: modify multiple files to expose a possible issue with merge-index
388
+ - t6407: modernise tests
389
+
390
+ The resolve and octopus merge strategy backends have been rewritten
391
+ in C.
392
+
393
+ Got enough review comments to get updated.
394
+
395
+--------------------------------------------------
396
+[Cooking]
397
+
398
+* vv/send-email-with-less-secure-apps-access (2021-01-07) 1 commit
399
+ - git-send-email.txt: mention less secure app access with Gmail
400
+
401
+ Doc update.
402
+
403
+ Will merge to 'next'.
404
+
405
+
406
+* ab/branch-sort (2021-01-07) 7 commits
407
- branch: show "HEAD detached" first under reverse sort
51
- - branch: use the "detached_head_first" sorting option
52
- - ref-filter: add a "detached_head_first" sorting option
408
+ - branch: sort detached HEAD based on a flag
409
+ - ref-filter: move ref_sorting flags to a bitfield
410
+ - ref-filter: move "cmp_fn" assignment into "else if" arm
411
+ - ref-filter: add braces to if/else if/else chain
412
- branch tests: add to --sort tests
413
- branch: change "--local" to "--list" in comment
414
@@ -59,7 +418,7 @@ Release tarballs are available at:
418
Will merge to 'next'.
419
420
62
-* ab/coc-update-to-2.0 (2021-01-04) 3 commits
421
+* ab/coc-update-to-2.0 (2021-01-07) 3 commits
422
- CoC: update to version 2.0 + local changes
423
- CoC: explicitly take any whitespace breakage
424
- CoC: Update word-wrapping to match upstream
@@ -73,27 +432,29 @@ Release tarballs are available at:
432
433
434
* ar/t6016-modernise (2021-01-04) 1 commit
76
- - t6016: move to lib-log-graph.sh framework
435
+ (merged to 'next' on 2021-01-08 at 45f1b43e88)
436
+ + t6016: move to lib-log-graph.sh framework
437
438
Test update.
439
80
- Will merge to 'next'.
440
+ Will merge to 'master'.
441
442
83
-* dl/reflog-with-single-entry (2021-01-06) 2 commits
443
+* dl/reflog-with-single-entry (2021-01-07) 2 commits
444
- refs: allow @{n} to work with n-sized reflog
445
- refs: factor out set_read_ref_cutoffs()
446
447
After expiring a reflog and making a single commit, the reflog for
448
the branch would record a single entry that knows both @{0} and
89
- @{1}, but we failed to answer "what commit we was on?", i.e. @{1}
449
+ @{1}, but we failed to answer "what commit were we on?", i.e. @{1}
450
451
92
-* ds/cache-tree-basics (2021-01-04) 9 commits
452
+* ds/cache-tree-basics (2021-01-07) 10 commits
453
- cache-tree: speed up consecutive path comparisons
454
- cache-tree: use ce_namelen() instead of strlen()
455
- index-format: discuss recursion of cached-tree better
96
- - index-format: update preamble to cached tree extension
456
+ - index-format: update preamble to cache tree extension
457
+ - index-format: use 'cache tree' over 'cached tree'
458
- cache-tree: trace regions for prime_cache_tree
459
- cache-tree: trace regions for I/O
460
- cache-tree: use trace2 in cache_tree_update()
@@ -104,20 +465,23 @@ Release tarballs are available at:
465
extension in the index.
466
467
107
-* ds/for-each-repo-noopfix (2021-01-06) 1 commit
468
+* ds/for-each-repo-noopfix (2021-01-07) 1 commit
469
- for-each-repo: do nothing on empty config
470
471
"git for-each-repo --config=<var> <cmd>" should not run <cmd> for
472
any repository when the configuration variable <var> is not defined
473
even once.
474
475
+ Will merge to 'next'.
476
+
477
478
* ds/trace2-topo-walk (2021-01-04) 1 commit
116
- - revision: trace topo-walk statistics
479
+ (merged to 'next' on 2021-01-08 at 794c8f37ee)
480
+ + revision: trace topo-walk statistics
481
482
The topological walk codepath is covered by new trace2 stats.
483
120
- Will merge to 'next'.
484
+ Will merge to 'master'.
485
486
487
* en/ort-conflict-handling (2021-01-04) 10 commits
@@ -131,22 +495,30 @@ Release tarballs are available at:
495
- merge-ort: implement unique_path() helper
496
- merge-ort: handle directory/file conflicts that remain
497
- merge-ort: handle D/F conflict where directory disappears due to merge
134
- (this branch uses en/merge-ort-2 and en/merge-ort-impl; is tangled with en/merge-ort-3 and en/merge-ort-recursive.)
498
+
499
+ ORT merge strategy learns more support for merge conflicts.
500
501
502
* fc/completion-aliases-support (2021-01-04) 4 commits
138
- - completion: add proper public __git_complete
139
- - test: completion: add tests for __git_complete
140
- - completion: bash: improve function detection
141
- - completion: bash: add __git_have_func helper
503
+ (merged to 'next' on 2021-01-08 at b2714ff1a4)
504
+ + completion: add proper public __git_complete
505
+ + test: completion: add tests for __git_complete
506
+ + completion: bash: improve function detection
507
+ + completion: bash: add __git_have_func helper
508
+
509
+ Bash completion (in contrib/) update to make it easier for
510
+ end-users to add completion for their custom "git" subcommands.
511
+
512
+ Will merge to 'master'.
513
514
515
* ma/doc-pack-format-varint-for-sizes (2021-01-04) 1 commit
145
- - pack-format.txt: document sizes at start of delta data
516
+ (merged to 'next' on 2021-01-08 at 8a448c50dd)
517
+ + pack-format.txt: document sizes at start of delta data
518
519
Doc update.
520
149
- Will merge to 'next'.
521
+ Will merge to 'master'.
522
523
524
* ma/more-opaque-lock-file (2021-01-06) 5 commits
@@ -162,24 +534,26 @@ Release tarballs are available at:
534
535
536
* ma/sha1-is-a-hash (2021-01-04) 4 commits
165
- - hash-lookup: rename from sha1-lookup
166
- - sha1-lookup: rename `sha1_pos()` as `hash_pos()`
167
- - object-file.c: rename from sha1-file.c
168
- - object-name.c: rename from sha1-name.c
537
+ (merged to 'next' on 2021-01-08 at a25537f7c3)
538
+ + hash-lookup: rename from sha1-lookup
539
+ + sha1-lookup: rename `sha1_pos()` as `hash_pos()`
540
+ + object-file.c: rename from sha1-file.c
541
+ + object-name.c: rename from sha1-name.c
542
543
Retire more names with "sha1" in it.
544
172
- Will merge to 'next'.
545
+ Will merge to 'master'.
546
547
548
* ma/t1300-cleanup (2021-01-04) 3 commits
176
- - t1300: don't needlessly work with `core.foo` configs
177
- - t1300: remove duplicate test for `--file no-such-file`
178
- - t1300: remove duplicate test for `--file ../foo`
549
+ (merged to 'next' on 2021-01-08 at 51aaae39a1)
550
+ + t1300: don't needlessly work with `core.foo` configs
551
+ + t1300: remove duplicate test for `--file no-such-file`
552
+ + t1300: remove duplicate test for `--file ../foo`
553
554
Code clean-up.
555
182
- Will merge to 'next'.
556
+ Will merge to 'master'.
557
558
559
* mt/t4129-with-setgid-dir (2021-01-06) 1 commit
@@ -194,226 +568,68 @@ Release tarballs are available at:
568
569
570
* nk/perf-fsmonitor-cleanup (2021-01-06) 1 commit
197
- - p7519: allow running without watchman prereq
198
-
199
- Test fix.
200
-
201
- Will merge to 'next'.
202
-
203
-
204
-* pb/doc-modules-git-work-tree-typofix (2021-01-04) 1 commit
205
- - gitmodules.txt: fix 'GIT_WORK_TREE' variable name
206
-
207
- Doc fix.
208
-
209
- Will merge to 'next'.
210
-
211
-
212
-* pb/mergetool-tool-help-fix (2021-01-06) 1 commit
213
- - mergetool--lib: fix '--tool-help' to correctly show available tools
214
-
215
- Fix 2.29 regression where "git mergetool --tool-help" fails to list
216
- all the available tools.
217
-
218
- Will merge to 'next'.
219
-
220
-
221
-* rs/rebase-commit-validation (2021-01-04) 1 commit
222
- - rebase: verify commit parameter
223
-
224
- Diagnose command line error early.
225
-
226
- Will merge to 'next'.
227
-
228
-
229
-* sg/t7800-difftool-robustify (2021-01-04) 1 commit
230
- . t7800-difftool: don't accidentally match tmp dirs
571
+ (merged to 'next' on 2021-01-08 at 1837d6c30b)
572
+ + p7519: allow running without watchman prereq
573
574
Test fix.
575
234
- Not working on Windows.
235
- cf. https://github.com/git/git/runs/1660588243?check_suite_focus=true#step:7:4186
236
-
237
-
238
-* ta/doc-typofix (2021-01-04) 1 commit
239
- - doc: fix some typos
240
-
241
- Doc fix.
242
-
243
- Will merge to 'next'.
244
-
245
-
246
-* zh/arg-help-format (2021-01-06) 2 commits
247
- - builtin/*: update usage format
248
- - parse-options: format argh like error messages
249
-
250
- Clean up option descriptions in "git cmd --help".
251
-
252
- Will merge to 'next'.
253
-
254
---------------------------------------------------
255
-[Stalled]
256
-
257
-* ss/submodule-add-in-c (2020-12-15) 3 commits
258
- . t7400: add test to check 'submodule add' for tracked paths
259
- . submodule: port submodule subcommand 'add' from shell to C
260
- . dir: change the scope of function 'directory_exists_in_index()'
261
-
262
- "git submodule add" being rewritten in C.
263
-
264
- Expecting a reroll.
265
- The patches are split incorrectly; part of 1/3 belongs to 2/3
266
- cf. <nycvar.QRO.7.76.6.2012190104140.56@tvgsbejvaqbjf.bet>
267
- It seems to introduce a segfault on 'seen'.
268
- cf. <xmqqft3xflw7.fsf@gitster.c.googlers.com>
269
-
270
-
271
-* mt/grep-sparse-checkout (2020-12-06) 10 commits
272
- - t7817: do not depend on any specific default branch name
273
- - config: add setting to ignore sparsity patterns in some cmds
274
- - grep: honor sparse checkout patterns
275
- - config: correctly read worktree configs in submodules
276
- - config: make do_git_config_sequence receive a 'struct repository'
277
- - t/helper/test-config: unify exit labels
278
- - t/helper/test-config: diagnose missing arguments
279
- - t/helper/test-config: be consistent with exit codes
280
- - t1308-config-set: avoid false positives when using test-config
281
- - doc: grep: unify info on configuration variables
282
- (this branch is used by mt/rm-sparse-checkout.)
283
-
284
- "git grep" has been tweaked to be limited to the sparse checkout
285
- paths.
286
-
287
-
288
-* mt/rm-sparse-checkout (2020-12-08) 1 commit
289
- - rm: honor sparse checkout patterns
290
- (this branch uses mt/grep-sparse-checkout.)
291
-
292
- "git rm" follows suit to "git grep" to ignore paths outside the
293
- sparsity pattern when the sparse checkout feature is in use.
294
-
295
- Need to wait for how these fit in larger picture.
296
- cf. <CABPp-BGMX3wb7LiS1HkJpGveoW3J1oR0vVHbKTF5+qYLRF+59g@mail.gmail.com>
297
-
298
-
299
-* jk/symlinked-dotgitx-files (2020-10-23) 9 commits
300
- (merged to 'next' on 2020-10-26 at c1dd37b024)
301
- + docs: document symlink restrictions for .git* files
302
- + fsck: complain when .gitattributes or .gitignore is a symlink
303
- + verify_path(): disallow symlinks in .gitattributes and .gitignore
304
- + t0060: test obscured .gitattributes and .gitignore matching
305
- + t7450: test .gitmodules symlink matching against obscured names
306
- + t7450: test verify_path() handling of gitmodules
307
- + t7415: rename to expand scope
308
- + fsck_tree(): wrap some long lines
309
- + fsck_tree(): fix shadowed variable
310
-
311
- Originally merged to 'next' on 2020-10-23
312
-
313
- "git fsck" and the corresponding check done during the transport
314
- learned to ensure that in-tree files like `.gitignore` and
315
- `.gitattributes` are not symbolic links.
316
-
317
- It seems that there are real projects with .gitignore recorded as
318
- symlinks, which may need to loosen the fsck setting. Do we need to
319
- introduce a class that is separate from symlinked .gitmodules that
320
- probably is with potential consequences that is more/less grave?
321
-
322
- Will eject out of 'next' when rewinding the branch.
323
-
324
-
325
-* sm/curl-retry (2020-10-13) 3 commits
326
- - http: automatically retry some requests
327
- - replace CURLOPT_FILE With CURLOPT_WRITEDATA
328
- - remote-curl: add testing for intelligent retry for HTTP
329
-
330
- The http transport has been taught to retry a failed request that
331
- may reasonably be retried.
332
-
333
- Expecting a reroll.
334
- cf. <20201015000410.GB328643@google.com>
335
- cf. <CAM4o00eefXK2CJ_FxwwVPpBKL01JsJANf+SdjCtw_0NVV82L+Q@mail.gmail.com>
576
+ Will merge to 'master'.
577
578
338
-* sv/t7001-modernize (2020-09-25) 11 commits
339
- - t7001: move cleanup code from outside the tests into them
340
- - t7001: use `test` rather than `[`
341
- - t7001: use here-docs instead of echo
342
- - t7001: put each command on a separate line
343
- - t7001: use ': >' rather than 'touch'
344
- - t7001: change (cd <path> && git foo) to (git -C <path> foo)
345
- - t7001: remove whitespace after redirect operators
346
- - t7001: change the style for cd according to subshell
347
- - t7001: remove unnecessary blank lines
348
- - t7001: use TAB instead of spaces
349
- - t7001: convert tests from the old style to the current style
579
+* pb/doc-modules-git-work-tree-typofix (2021-01-04) 1 commit
580
+ (merged to 'next' on 2021-01-08 at a67ab3e96a)
581
+ + gitmodules.txt: fix 'GIT_WORK_TREE' variable name
582
351
- Test script modernization.
583
+ Doc fix.
584
353
- Expecting a reroll.
354
- cf. <20200925170256.11490-1-shubhunic@gmail.com>
585
+ Will merge to 'master'.
586
587
357
-* ar/fetch-transfer-ipversion (2020-09-16) 1 commit
358
- - config: option transfer.ipversion to set transport protocol version for network fetches
588
+* pb/mergetool-tool-help-fix (2021-01-06) 1 commit
589
+ - mergetool--lib: fix '--tool-help' to correctly show available tools
590
360
- Adds transfer.ipversion configuration variable.
591
+ Fix 2.29 regression where "git mergetool --tool-help" fails to list
592
+ all the available tools.
593
362
- Needs more work.
594
+ Will merge to 'next'.
595
596
365
-* vv/send-email-with-less-secure-apps-access (2020-08-29) 1 commit
366
- - Documentation/git-send-email.txt: Mention less secure app access might need to enable.
597
+* rs/rebase-commit-validation (2021-01-04) 1 commit
598
+ (merged to 'next' on 2021-01-08 at 2c63eb1cc8)
599
+ + rebase: verify commit parameter
600
368
- Doc update.
601
+ Diagnose command line error early.
602
370
- Expecting a reroll.
371
- cf. <xmqqwo1hi9nv.fsf@gitster.c.googlers.com>
372
- cf. <xmqqft85i72s.fsf@gitster.c.googlers.com>
603
+ Will merge to 'master'.
604
605
375
-* jc/war-on-dashed-git (2020-12-21) 2 commits
376
- - fixup??? git: catch an attempt to run "git-foo"
377
- - git: catch an attempt to run "git-foo"
606
+* sg/t7800-difftool-robustify (2021-01-04) 1 commit
607
+ . t7800-difftool: don't accidentally match tmp dirs
608
379
- The first step to remove on-disk binaries for built-in subcommands
380
- by soliciting objections.
609
+ Test fix.
610
382
- On hold for now.
611
+ Not working on Windows.
612
+ cf. https://github.com/git/git/runs/1660588243?check_suite_focus=true#step:7:4186
613
614
385
-* mk/use-size-t-in-zlib (2018-10-15) 1 commit
386
- - zlib.c: use size_t for size
615
+* ta/doc-typofix (2021-01-04) 1 commit
616
+ (merged to 'next' on 2021-01-08 at 1e579ef94f)
617
+ + doc: fix some typos
618
388
- The wrapper to call into zlib followed our long tradition to use
389
- "unsigned long" for sizes of regions in memory, which have been
390
- updated to use "size_t".
619
+ Doc fix.
620
392
---------------------------------------------------
393
-[Needs Review]
621
+ Will merge to 'master'.
622
395
-* ag/merge-strategies-in-c (2020-11-24) 13 commits
396
- - sequencer: use the "octopus" merge strategy without forking
397
- - sequencer: use the "resolve" strategy without forking
398
- - merge: use the "octopus" strategy without forking
399
- - merge: use the "resolve" strategy without forking
400
- - merge-octopus: rewrite in C
401
- - merge-recursive: move better_branch_name() to merge.c
402
- - merge-resolve: rewrite in C
403
- - merge-index: don't fork if the requested program is `git-merge-one-file'
404
- - merge-index: libify merge_one_path() and merge_all()
405
- - merge-one-file: rewrite in C
406
- - update-index: move add_cacheinfo() to read-cache.c
407
- - t6060: modify multiple files to expose a possible issue with merge-index
408
- - t6407: modernise tests
623
410
- The resolve and octopus merge strategy backends have been rewritten
411
- in C.
624
+* zh/arg-help-format (2021-01-06) 2 commits
625
+ (merged to 'next' on 2021-01-08 at 208c98620c)
626
+ + builtin/*: update usage format
627
+ + parse-options: format argh like error messages
628
413
- Needs review.
629
+ Clean up option descriptions in "git cmd --help".
630
+
631
+ Will merge to 'master'.
632
415
---------------------------------------------------
416
-[Cooking]
633
634
* ak/corrected-commit-date (2021-01-04) 11 commits
635
- doc: add corrected commit date info
@@ -431,16 +647,8 @@ Release tarballs are available at:
647
The commit-graph learned to use corrected commit dates instead of
648
the generation number to help topological revision traversal.
649
434
- Getting there.
435
-
436
-
437
-* es/perf-export-fix (2020-12-22) 1 commit
438
- (merged to 'next' on 2020-12-22 at d06b0379d9)
439
- + t/perf: avoid unnecessary test_export() recursion
440
-
441
- Tweak unneeded recursion from a test framework helper function.
442
-
443
- Will merge to 'master'.
650
+ Getting there, but not needs more help to find and resolve segv.
651
+ cf. <1adabda6-b80b-d543-f6c0-570dadbe589b@gmail.com>
652
653
654
* dl/p4-encode-after-kw-expansion (2020-12-23) 1 commit
@@ -465,31 +673,12 @@ Release tarballs are available at:
673
674
675
* ew/decline-core-abbrev (2020-12-23) 1 commit
468
- - core.abbrev=no disables abbreviations
676
+ (merged to 'next' on 2021-01-08 at 630dd186a4)
677
+ + core.abbrev=no disables abbreviations
678
679
Allow the configuration to specify no abbreviation regardless of
680
the hash algorithm.
681
473
- Will merge to 'next'.
474
-
475
-
476
-* es/worktree-repair-both-moved (2020-12-21) 1 commit
477
- (merged to 'next' on 2020-12-22 at 9eaae4f5c0)
478
- + worktree: teach `repair` to fix multi-directional breakage
479
-
480
- "git worktree repair" learned to deal with the case where both the
481
- repository and the worktree moved.
482
-
483
- Will merge to 'master'.
484
-
485
-
486
-* fc/t6030-bisect-reset-removes-auxiliary-files (2020-12-21) 1 commit
487
- (merged to 'next' on 2020-12-22 at 2ab78ef1e1)
488
- + test: bisect-porcelain: fix location of files
489
-
490
- A 3-year old test that was not testing anything useful has been
491
- corrected.
492
-
682
Will merge to 'master'.
683
684
@@ -504,6 +693,8 @@ Release tarballs are available at:
693
694
Piecemeal of rewrite of "git bisect" in C continues.
695
696
+ What's the status of this thing?
697
+
698
699
* jt/clone-unborn-head (2020-12-22) 3 commits
700
- clone: respect remote unborn HEAD
@@ -515,6 +706,8 @@ Release tarballs are available at:
706
did not convey the information necessary to do so when copying an
707
empty repository. The protocol v2 learned how to do so.
708
709
+ What's the status of this thing?
710
+
711
712
* fc/bash-completion-post-2.29 (2020-12-23) 4 commits
713
- completion: bash: add correct suffix in variables
@@ -525,12 +718,6 @@ Release tarballs are available at:
718
Seems to break tests on Windows
719
720
528
-* jc/config-pretend-gitdir (2020-12-15) 1 commit
529
- - config: --pretend-git-dir for includeIf:gitdir
530
-
531
- WIP
532
-
533
-
721
* jc/deprecate-pack-redundant (2020-12-15) 1 commit
722
- pack-redundant: gauge the usage before proposing its removal
723
@@ -538,20 +725,7 @@ Release tarballs are available at:
725
stale with almost unusable performance issues, gets used, as we no
726
longer want to recommend its use (instead just "repack -d" instead).
727
541
-
542
-* en/merge-ort-recursive (2020-12-16) 4 commits
543
- (merged to 'next' on 2020-12-22 at 0dbf60011f)
544
- + merge-ort: implement merge_incore_recursive()
545
- + merge-ort: make clear_internal_opts() aware of partial clearing
546
- + merge-ort: copy a few small helper functions from merge-recursive.c
547
- + commit: move reverse_commit_list() from merge-recursive
548
- (this branch uses en/merge-ort-2 and en/merge-ort-impl; is tangled with en/merge-ort-3 and en/ort-conflict-handling.)
549
-
550
- The ORT merge strategy learned to synthesize virtual ancestor tree
551
- by recursively merging multiple merge bases together, just like the
552
- recursive backend has done for years.
553
-
554
- Will merge to 'master'.
728
+ Will merge to 'next'.
729
730
731
* mt/parallel-checkout-part-1 (2020-12-16) 9 commits
@@ -571,21 +745,24 @@ Release tarballs are available at:
745
746
747
* en/merge-ort-3 (2020-12-15) 11 commits
574
- - merge-ort: add implementation of type-changed rename handling
575
- - merge-ort: add implementation of normal rename handling
576
- - merge-ort: add implementation of rename collisions
577
- - merge-ort: add implementation of rename/delete conflicts
578
- - merge-ort: add implementation of both sides renaming differently
579
- - merge-ort: add implementation of both sides renaming identically
580
- - merge-ort: add basic outline for process_renames()
581
- - merge-ort: implement compare_pairs() and collect_renames()
582
- - merge-ort: implement detect_regular_renames()
583
- - merge-ort: add initial outline for basic rename detection
584
- - merge-ort: add basic data structures for handling renames
585
- (this branch uses en/merge-ort-2 and en/merge-ort-impl; is tangled with en/merge-ort-recursive and en/ort-conflict-handling.)
748
+ (merged to 'next' on 2021-01-08 at fe481b9627)
749
+ + merge-ort: add implementation of type-changed rename handling
750
+ + merge-ort: add implementation of normal rename handling
751
+ + merge-ort: add implementation of rename collisions
752
+ + merge-ort: add implementation of rename/delete conflicts
753
+ + merge-ort: add implementation of both sides renaming differently
754
+ + merge-ort: add implementation of both sides renaming identically
755
+ + merge-ort: add basic outline for process_renames()
756
+ + merge-ort: implement compare_pairs() and collect_renames()
757
+ + merge-ort: implement detect_regular_renames()
758
+ + merge-ort: add initial outline for basic rename detection
759
+ + merge-ort: add basic data structures for handling renames
760
+ (this branch is used by en/ort-directory-rename.)
761
762
Rename detection is added to the "ORT" merge strategy.
763
764
+ Will merge to 'master'.
765
+
766
767
* ps/config-env-pairs (2021-01-06) 8 commits
768
- config: allow specifying config entries via envvar pairs
@@ -653,42 +830,13 @@ Release tarballs are available at:
830
831
832
* bc/rev-parse-path-format (2020-12-12) 2 commits
656
- - rev-parse: add option for absolute or relative path formatting
657
- - abspath: add a function to resolve paths with missing components
833
+ (merged to 'next' on 2021-01-08 at 7d51587b7f)
834
+ + rev-parse: add option for absolute or relative path formatting
835
+ + abspath: add a function to resolve paths with missing components
836
837
"git rev-parse" can be explicitly told to give output as absolute
838
or relative path.
839
662
- Will merge to 'next'.
663
-
664
-
665
-* en/merge-ort-impl (2020-12-13) 21 commits
666
- (merged to 'next' on 2020-12-21 at c551d7bda9)
667
- + merge-ort: free data structures in merge_finalize()
668
- + merge-ort: add implementation of record_conflicted_index_entries()
669
- + tree: enable cmp_cache_name_compare() to be used elsewhere
670
- + merge-ort: add implementation of checkout()
671
- + merge-ort: basic outline for merge_switch_to_result()
672
- + merge-ort: step 3 of tree writing -- handling subdirectories as we go
673
- + merge-ort: step 2 of tree writing -- function to create tree object
674
- + merge-ort: step 1 of tree writing -- record basenames, modes, and oids
675
- + merge-ort: have process_entries operate in a defined order
676
- + merge-ort: add a preliminary simple process_entries() implementation
677
- + merge-ort: avoid recursing into identical trees
678
- + merge-ort: record stage and auxiliary info for every path
679
- + merge-ort: compute a few more useful fields for collect_merge_info
680
- + merge-ort: avoid repeating fill_tree_descriptor() on the same tree
681
- + merge-ort: implement a very basic collect_merge_info()
682
- + merge-ort: add an err() function similar to one from merge-recursive
683
- + merge-ort: use histogram diff
684
- + merge-ort: port merge_start() from merge-recursive
685
- + merge-ort: add some high-level algorithm structure
686
- + merge-ort: setup basic internal data structures
687
- + Merge branch 'en/strmap' into en/merge-ort-impl
688
- (this branch is used by en/merge-ort-2, en/merge-ort-3, en/merge-ort-recursive and en/ort-conflict-handling.)
689
-
690
- The merge backend "done right" starts to emerge.
691
-
840
Will merge to 'master'.
841
842
@@ -755,48 +903,35 @@ Release tarballs are available at:
903
904
905
* ab/mktag (2021-01-06) 23 commits
758
- - mktag: add a --[no-]strict option
759
- - mktag: mark strings for translation
760
- - mktag: convert to parse-options
761
- - mktag: allow omitting the header/body \n separator
762
- - mktag: allow turning off fsck.extraHeaderEntry
763
- - fsck: make fsck_config() re-usable
764
- - mktag: use fsck instead of custom verify_tag()
765
- - mktag: use puts(str) instead of printf("%s\n", str)
766
- - mktag: remove redundant braces in one-line body "if"
767
- - mktag: use default strbuf_read() hint
768
- - mktag tests: test verify_object() with replaced objects
769
- - mktag tests: improve verify_object() test coverage
770
- - mktag tests: test "hash-object" compatibility
771
- - mktag tests: stress test whitespace handling
772
- - mktag tests: run "fsck" after creating "mytag"
773
- - mktag tests: don't create "mytag" twice
774
- - mktag tests: don't redirect stderr to a file needlessly
775
- - mktag tests: remove needless SHA-1 hardcoding
776
- - mktag tests: use "test_commit" helper
777
- - mktag tests: don't needlessly use a subshell
778
- - mktag doc: update to explain why to use this
779
- - mktag doc: grammar fix, when exists -> when it exists
780
- - mktag doc: say <hash> not <sha1>
906
+ (merged to 'next' on 2021-01-08 at 6f9e11ad97)
907
+ + mktag: add a --[no-]strict option
908
+ + mktag: mark strings for translation
909
+ + mktag: convert to parse-options
910
+ + mktag: allow omitting the header/body \n separator
911
+ + mktag: allow turning off fsck.extraHeaderEntry
912
+ + fsck: make fsck_config() re-usable
913
+ + mktag: use fsck instead of custom verify_tag()
914
+ + mktag: use puts(str) instead of printf("%s\n", str)
915
+ + mktag: remove redundant braces in one-line body "if"
916
+ + mktag: use default strbuf_read() hint
917
+ + mktag tests: test verify_object() with replaced objects
918
+ + mktag tests: improve verify_object() test coverage
919
+ + mktag tests: test "hash-object" compatibility
920
+ + mktag tests: stress test whitespace handling
921
+ + mktag tests: run "fsck" after creating "mytag"
922
+ + mktag tests: don't create "mytag" twice
923
+ + mktag tests: don't redirect stderr to a file needlessly
924
+ + mktag tests: remove needless SHA-1 hardcoding
925
+ + mktag tests: use "test_commit" helper
926
+ + mktag tests: don't needlessly use a subshell
927
+ + mktag doc: update to explain why to use this
928
+ + mktag doc: grammar fix, when exists -> when it exists
929
+ + mktag doc: say <hash> not <sha1>
930
931
"git mktag" validates its input using its own rules before writing
932
a tag object---it has been updated to share the logic with "git
933
fsck".
934
786
- Will merge to 'next'.
787
-
788
-
789
-* ab/trailers-extra-format (2020-12-09) 5 commits
790
- (merged to 'next' on 2020-12-14 at 9fc731944e)
791
- + pretty format %(trailers): add a "key_value_separator"
792
- + pretty format %(trailers): add a "keyonly"
793
- + pretty-format %(trailers): fix broken standalone "valueonly"
794
- + pretty format %(trailers) doc: avoid repetition
795
- + pretty format %(trailers) test: split a long line
796
-
797
- The "--format=%(trailers)" mechanism gets enhanced to make it
798
- easier to design output for machine consumption.
799
-
935
Will merge to 'master'.
936
937
@@ -813,91 +948,18 @@ Release tarballs are available at:
948
949
File-level rename detection updates.
950
816
-
817
-* en/merge-ort-2 (2020-12-13) 7 commits
818
- (merged to 'next' on 2020-12-21 at ef5b184349)
819
- + merge-ort: add modify/delete handling and delayed output processing
820
- + merge-ort: add die-not-implemented stub handle_content_merge() function
821
- + merge-ort: add function grouping comments
822
- + merge-ort: add a paths_to_free field to merge_options_internal
823
- + merge-ort: add a path_conflict field to merge_options_internal
824
- + merge-ort: add a clear_internal_opts helper
825
- + merge-ort: add a few includes
826
- (this branch is used by en/merge-ort-3, en/merge-ort-recursive and en/ort-conflict-handling; uses en/merge-ort-impl.)
827
-
828
- More "ORT" merge strategy.
829
-
830
- Will merge to 'master'.
831
-
832
-
833
-* fc/pull-merge-rebase (2020-12-15) 5 commits
834
- (merged to 'next' on 2020-12-21 at acce13e5c4)
835
- + pull: display default warning only when non-ff
836
- + pull: correct condition to trigger non-ff advice
837
- + pull: get rid of unnecessary global variable
838
- + pull: give the advice for choosing rebase/merge much later
839
- + pull: refactor fast-forward check
840
-
841
- When a user does not tell "git pull" to use rebase or merge, the
842
- command gives a loud message telling a user to choose between
843
- rebase or merge but creates a merge anyway, forcing users who would
844
- want to rebase to redo the operation. Fix an early part of this
845
- problem by tightening the condition to give the message---there is
846
- no reason to stop or force the user to choose between rebase or
847
- merge if the history fast-forwards.
848
-
849
- Will merge to 'master'.
850
-
851
-
852
-* pk/subsub-fetch-fix-take-2 (2020-12-09) 1 commit
853
- (merged to 'next' on 2020-12-14 at ccc01a5f66)
854
- + submodules: fix of regression on fetching of non-init subsub-repo
855
-
856
- "git fetch --recurse-submodules" fix (second attempt).
857
-
858
- Will merge to 'master'.
951
+ Will merge to 'next'.
952
953
954
* en/stash-apply-sparse-checkout (2020-12-01) 3 commits
862
- - stash: fix stash application in sparse-checkouts
863
- - stash: remove unnecessary process forking
864
- - t7012: add a testcase demonstrating stash apply bugs in sparse checkouts
955
+ (merged to 'next' on 2021-01-08 at cae5b73d99)
956
+ + stash: fix stash application in sparse-checkouts
957
+ + stash: remove unnecessary process forking
958
+ + t7012: add a testcase demonstrating stash apply bugs in sparse checkouts
959
960
"git stash" did not work well in a sparsely checked out working
961
tree.
962
869
- Will merge to 'next'.
870
-
871
-
872
-* tb/pack-bitmap (2020-12-08) 24 commits
873
- (merged to 'next' on 2020-12-15 at 773268c2fb)
874
- + pack-bitmap-write: better reuse bitmaps
875
- + pack-bitmap-write: relax unique revwalk condition
876
- + pack-bitmap-write: use existing bitmaps
877
- + pack-bitmap: factor out 'add_commit_to_bitmap()'
878
- + pack-bitmap: factor out 'bitmap_for_commit()'
879
- + pack-bitmap-write: ignore BITMAP_FLAG_REUSE
880
- + pack-bitmap-write: build fewer intermediate bitmaps
881
- + pack-bitmap.c: check reads more aggressively when loading
882
- + pack-bitmap-write: rename children to reverse_edges
883
- + t5310: add branch-based checks
884
- + commit: implement commit_list_contains()
885
- + bitmap: implement bitmap_is_subset()
886
- + pack-bitmap-write: fill bitmap with commit history
887
- + pack-bitmap-write: pass ownership of intermediate bitmaps
888
- + pack-bitmap-write: reimplement bitmap writing
889
- + ewah: add bitmap_dup() function
890
- + ewah: implement bitmap_or()
891
- + ewah: make bitmap growth less aggressive
892
- + ewah: factor out bitmap growth
893
- + rev-list: die when --test-bitmap detects a mismatch
894
- + t5310: drop size of truncated ewah bitmap
895
- + pack-bitmap: bounds-check size of cache extension
896
- + pack-bitmap: fix header size check
897
- + ewah/ewah_bitmap.c: avoid open-coding ALLOC_GROW()
898
-
899
- Various improvements to the codepath that writes out pack bitmaps.
900
-
963
Will merge to 'master'.
964
965
@@ -939,16 +1001,17 @@ Release tarballs are available at:
1001
1002
1003
* ds/maintenance-part-4 (2021-01-05) 4 commits
942
- - maintenance: use Windows scheduled tasks
943
- - maintenance: use launchctl on macOS
944
- - maintenance: include 'cron' details in docs
945
- - maintenance: extract platform-specific scheduling
1004
+ (merged to 'next' on 2021-01-08 at 1f98c859ea)
1005
+ + maintenance: use Windows scheduled tasks
1006
+ + maintenance: use launchctl on macOS
1007
+ + maintenance: include 'cron' details in docs
1008
+ + maintenance: extract platform-specific scheduling
1009
1010
Follow-up on the "maintenance part-3" which introduced scheduled
1011
maintenance tasks to support platforms whose native scheduling
1012
methods are not 'cron'.
1013
951
- Will merge to 'next'.
1014
+ Will merge to 'master'.
1015
1016
1017
* sj/untracked-files-in-submodule-directory-is-not-dirty (2020-12-08) 1 commit
@@ -959,3 +1022,15 @@ Release tarballs are available at:
1022
that the "-dirty" indicator would align with "git describe --dirty",
1023
which does not consider having untracked files in the working tree
1024
as source of dirtiness. The inconsistency has been fixed.
1025
+
1026
+ Will merge to 'next'.
1027
+
1028
+--------------------------------------------------
1029
+[Discarded]
1030
+
1031
+* jc/config-pretend-gitdir (2020-12-15) 1 commit
1032
+ . config: --pretend-git-dir for includeIf:gitdir
1033
+
1034
+ It turns out that the original "problem" that inspired the feature
1035
+ was working as designed.
1036
+ cf. <CAPQE4+rhWT9kgusNXOw5cnJ-oFq++4G1FMaXvQ3wppQ0GE0hSA@mail.gmail.com>