What's cooking (2018/11 #04)
Junio C Hamano committed
Nov 13, 2018 at 23:01 UTC
8364e13a5d52ecc14e24a1e4f572bc3bda795975
1 file changed
+708
-685
whats-cooking.txt
+708
-685
@@ -1,10 +1,10 @@
1
To: git@vger.kernel.org
2
Bcc: lwn@lwn.net
3
-Subject: What's cooking in git.git (Nov 2018, #03; Wed, 7)
4
-X-master-at: 8858448bb49332d353febc078ce4a3abcc962efe
5
-X-next-at: 8438c0b2453a7207c9c45756f5e37dfe283db602
3
+Subject: What's cooking in git.git (Nov 2018, #04; Tue, 13)
4
+X-master-at: d166e6afe5f257217836ef24a73764eba390c58d
5
+X-next-at: 17fedb746fde9e40924a6ce11c0976a097eb126b
6
7
-What's cooking in git.git (Nov 2018, #03; Wed, 7)
7
+What's cooking in git.git (Nov 2018, #04; Tue, 13)
8
--------------------------------------------------
9
10
Here are the topics that have been cooking. Commits prefixed with
@@ -20,294 +20,696 @@ of the repositories listed at
20
--------------------------------------------------
21
[Graduated to "master"]
22
23
-* en/merge-cleanup-more (2018-10-18) 2 commits
24
- (merged to 'next' on 2018-10-26 at c706319c26)
25
- + merge-recursive: avoid showing conflicts with merge branch before HEAD
26
- + merge-recursive: improve auto-merging messages with path collisions
27
- (this branch is used by en/merge-path-collision.)
23
+* ab/pack-tests-cleanup (2018-10-31) 3 commits
24
+ (merged to 'next' on 2018-11-03 at b4a39595bb)
25
+ + index-pack tests: don't leave test repo dirty at end
26
+ + pack-objects tests: don't leave test .git corrupt at end
27
+ + pack-objects test: modernize style
28
29
- Further clean-up of merge-recursive machinery.
29
+ A couple of tests used to leave the repository in a state that is
30
+ deliberately corrupt, which have been corrected.
31
32
32
-* jc/http-curlver-warnings (2018-10-26) 1 commit
33
- (merged to 'next' on 2018-10-26 at 870e125cec)
34
- + http: give curl version warnings consistently
35
- (this branch uses js/mingw-http-ssl; is tangled with nd/config-split.)
33
+* ag/rebase-i-in-c (2018-11-05) 1 commit
34
+ (merged to 'next' on 2018-11-06 at 8fa9d64898)
35
+ + sequencer.c: remove a stray semicolon
36
37
- Warning message fix.
37
+ Code clean-up for a topic already in 'master'.
38
39
40
-* js/mingw-http-ssl (2018-10-26) 3 commits
41
- (merged to 'next' on 2018-10-26 at 318e82e101)
42
- + http: when using Secure Channel, ignore sslCAInfo by default
43
- + http: add support for disabling SSL revocation checks in cURL
44
- + http: add support for selecting SSL backends at runtime
45
- (this branch is used by jc/http-curlver-warnings and nd/config-split.)
40
+* ag/rev-parse-all-exclude-fix (2018-11-01) 1 commit
41
+ (merged to 'next' on 2018-11-03 at 49730558fa)
42
+ + rev-parse: clear --exclude list after 'git rev-parse --all'
43
47
- On platforms with recent cURL library, http.sslBackend configuration
48
- variable can be used to choose a different SSL backend at runtime.
49
- The Windows port uses this mechanism to switch between OpenSSL and
50
- Secure Channel while talking over the HTTPS protocol.
44
+ "git rev-parse --exclude=* --branches --branches" (i.e. first
45
+ saying "add only things that do not match '*' out of all branches"
46
+ and then adding all branches, without any exclusion this time")
47
+ worked as expected, but "--exclude=* --all --all" did not work the
48
+ same way, which has been fixed.
49
50
53
-* js/mingw-ns-filetime (2018-10-24) 3 commits
54
- (merged to 'next' on 2018-10-29 at 4563a0d9d0)
55
- + mingw: implement nanosecond-precision file times
56
- + mingw: replace MSVCRT's fstat() with a Win32-based implementation
57
- + mingw: factor out code to set stat() data
51
+* al/send-email-auto-cte-fixup (2018-11-02) 1 commit
52
+ (merged to 'next' on 2018-11-05 at 4ecb1133ce)
53
+ + send-email: avoid empty transfer encoding header
54
59
- Windows port learned to use nano-second resolution file timestamps.
55
+ "git send-email --transfer-encoding=..." in recent versions of Git
56
+ sometimes produced an empty "Content-Transfer-Encoding:" header,
57
+ which has been corrected.
58
59
62
-* js/remote-archive-dwimfix (2018-10-26) 1 commit
63
- (merged to 'next' on 2018-10-26 at f5bf6946bd)
64
- + archive: initialize archivers earlier
60
+* ao/submodule-wo-gitmodules-checked-out (2018-10-31) 10 commits
61
+ (merged to 'next' on 2018-11-03 at 00c3377ef0)
62
+ + t/helper: add test-submodule-nested-repo-config
63
+ + submodule: support reading .gitmodules when it's not in the working tree
64
+ + submodule: add a helper to check if it is safe to write to .gitmodules
65
+ + t7506: clean up .gitmodules properly before setting up new scenario
66
+ + submodule: use the 'submodule--helper config' command
67
+ + submodule--helper: add a new 'config' subcommand
68
+ + t7411: be nicer to future tests and really clean things up
69
+ + t7411: merge tests 5 and 6
70
+ + submodule: factor out a config_set_in_gitmodules_file_gently function
71
+ + submodule: add a print_config_from_gitmodules() helper
72
+ (this branch is used by sb/submodule-recursive-fetch-gets-the-tip.)
73
66
- The logic to determine the archive type "git archive" uses did not
67
- correctly kick in for "git archive --remote", which has been
68
- corrected.
74
+ The submodule support has been updated to read from the blob at
75
+ HEAD:.gitmodules when the .gitmodules file is missing from the
76
+ working tree.
77
78
71
-* js/shallow-and-fetch-prune (2018-10-25) 3 commits
72
- (merged to 'next' on 2018-10-26 at 93b7196560)
73
- + repack -ad: prune the list of shallow commits
74
- + shallow: offer to prune only non-existing entries
75
- + repack: point out a bug handling stale shallow info
79
+* bp/add-diff-files-optim (2018-11-03) 1 commit
80
+ (merged to 'next' on 2018-11-06 at cdaeb7924a)
81
+ + add: speed up cmd_add() by utilizing read_cache_preload()
82
77
- "git repack" in a shallow clone did not correctly update the
78
- shallow points in the repository, leading to a repository that
79
- does not pass fsck.
83
+ "git add" needs to internally run "diff-files" equivalent, and the
84
+ codepath learned the same optimization as "diff-files" has to run
85
+ lstat(2) in parallel to find which paths have been updated in the
86
+ working tree.
87
88
82
-* jt/upload-pack-v2-fix-shallow (2018-10-19) 3 commits
83
- (merged to 'next' on 2018-10-29 at d9010b3c7b)
84
- + upload-pack: clear flags before each v2 request
85
- + upload-pack: make want_obj not global
86
- + upload-pack: make have_obj not global
89
+* bp/refresh-index-using-preload (2018-11-06) 2 commits
90
+ (merged to 'next' on 2018-11-06 at d9b9d8f559)
91
+ + refresh_index: remove unnecessary calls to preload_index()
92
+ (merged to 'next' on 2018-11-01 at 289e6bcece)
93
+ + speed up refresh_index() by utilizing preload_index()
94
88
- "git fetch" over protocol v2 into a shallow repository failed to
89
- fetch full history behind a new tip of history that was diverged
90
- before the cut-off point of the history that was previously fetched
91
- shallowly.
95
+ The helper function to refresh the cached stat information in the
96
+ in-core index has learned to perform the lstat() part of the
97
+ operation in parallel on multi-core platforms.
98
99
94
-* jw/send-email-no-auth (2018-10-23) 1 commit
95
- (merged to 'next' on 2018-10-29 at a3fbbdb889)
96
- + send-email: explicitly disable authentication
100
+* bp/reset-quiet (2018-10-24) 3 commits
101
+ (merged to 'next' on 2018-10-29 at 71f4fbc802)
102
+ + reset: warn when refresh_index() takes more than 2 seconds
103
+ + reset: add new reset.quiet config setting
104
+ + reset: don't compute unstaged changes after reset when --quiet
105
+ (this branch is used by nd/config-split.)
106
98
- "git send-email" learned to disable SMTP authentication via the
99
- "--smtp-auth=none" option, even when the smtp username is given
100
- (which turns the authentication on by default).
107
+ "git reset --quiet" no longer runs "update-index --refresh"
108
+ internally, which shifts the refresh cost away from the command.
109
110
103
-* md/exclude-promisor-objects-fix (2018-10-23) 2 commits
104
- (merged to 'next' on 2018-10-29 at fb36a5dcbe)
105
- + exclude-promisor-objects: declare when option is allowed
106
- + Documentation/git-log.txt: do not show --exclude-promisor-objects
111
+* ds/add-missing-tags (2018-11-03) 3 commits
112
+ (merged to 'next' on 2018-11-05 at 8388baf76d)
113
+ + remote: make add_missing_tags() linear
114
+ + test-reach: test get_reachable_subset
115
+ + commit-reach: implement get_reachable_subset
116
108
- Operations on promisor objects make sense in the context of only a
109
- small subset of the commands that internally use the revisions
110
- machinery, but the "--exclude-promisor-objects" option were taken
111
- and led to nonsense results by commands like "log", to which it
112
- didn't make much sense. This has been corrected.
117
+ The history traversal used to implement the tag-following has been
118
+ optimized by introducing a new helper.
119
120
115
-* mg/gpg-fingerprint (2018-10-23) 3 commits
116
- (merged to 'next' on 2018-10-26 at 1e219cb754)
117
- + gpg-interface.c: obtain primary key fingerprint as well
118
- + gpg-interface.c: support getting key fingerprint via %GF format
119
- + gpg-interface.c: use flags to determine key/signer info presence
120
- (this branch uses mg/gpg-parse-tighten; is tangled with jc/gpg-cocci-preincr.)
121
+* ds/test-multi-pack-index (2018-10-26) 4 commits
122
+ (merged to 'next' on 2018-11-03 at 624c415a45)
123
+ + packfile: close multi-pack-index in close_all_packs
124
+ + multi-pack-index: define GIT_TEST_MULTI_PACK_INDEX
125
+ + midx: close multi-pack-index on repack
126
+ + midx: fix broken free() in close_midx()
127
122
- New "--pretty=format:" placeholders %GF and %GP that show the GPG
123
- key fingerprints have been invented.
128
+ Tests for the recently introduced multi-pack index machinery.
129
130
126
-* mg/gpg-parse-tighten (2018-10-22) 1 commit
127
- (merged to 'next' on 2018-10-26 at efdec77193)
128
- + gpg-interface.c: detect and reject multiple signatures on commits
129
- (this branch is used by jc/gpg-cocci-preincr and mg/gpg-fingerprint.)
131
+* jc/war-on-string-list (2018-11-01) 1 commit
132
+ (merged to 'next' on 2018-11-03 at 2ff65073f1)
133
+ + fetch: replace string-list used as a look-up table with a hashmap
134
131
- Detect and reject a signature block that has more than one GPG
132
- signature.
135
+ Replace three string-list instances used as look-up tables in "git
136
+ fetch" with hashmaps.
137
138
135
-* nd/completion-negation (2018-10-22) 1 commit
136
- (merged to 'next' on 2018-10-29 at 87e73b0c72)
137
- + completion: fix __gitcomp_builtin no longer consider extra options
139
+* jk/detect-truncated-zlib-input (2018-10-31) 4 commits
140
+ (merged to 'next' on 2018-11-03 at 4952b4412b)
141
+ + Adjust for 2.19.x series
142
+ + cat-file: handle streaming failures consistently
143
+ + check_stream_sha1(): handle input underflow
144
+ + t1450: check large blob in trailing-garbage test
145
139
- The command line completion machinery (in contrib/) has been
140
- updated to allow the completion script to tweak the list of options
141
- that are reported by the parse-options machinery correctly.
146
+ A regression in Git 2.12 era made "git fsck" fall into an infinite
147
+ loop while processing truncated loose objects.
148
149
144
-* nd/submodule-unused-vars (2018-10-22) 1 commit
145
- (merged to 'next' on 2018-10-29 at 33641dcc89)
146
- + submodule.c: remove some of the_repository references
150
+* jk/misc-unused-fixes (2018-11-07) 4 commits
151
+ (merged to 'next' on 2018-11-07 at 8438c0b245)
152
+ + approxidate: fix NULL dereference in date_time()
153
+ (merged to 'next' on 2018-11-05 at 03429f23c4)
154
+ + pathspec: handle non-terminated strings with :(attr)
155
+ + approxidate: handle pending number for "specials"
156
+ + rev-list: handle flags for --indexed-objects
157
148
- Code clean-up.
158
+ Assorted fixes for bugs found while auditing -Wunused-parameter
159
+ warnings.
160
161
151
-* nd/unpack-trees-with-cache-tree (2018-10-22) 1 commit
152
- (merged to 'next' on 2018-10-29 at de51b606da)
153
- + read-cache: use of memory after it is freed
162
+* jk/proto-v2-ref-prefix-fix (2018-10-31) 2 commits
163
+ (merged to 'next' on 2018-11-03 at 3a203db692)
164
+ + ls-remote: pass heads/tags prefixes to transport
165
+ + ls-remote: do not send ref prefixes for patterns
166
155
- Trivial bugfix.
167
+ "git ls-remote $there foo" was broken by recent update for the
168
+ protocol v2 and stopped showing refs that match 'foo' that are not
169
+ refs/{heads,tags}/foo, which has been fixed.
170
171
158
-* rj/header-cleanup (2018-10-29) 3 commits
159
- (merged to 'next' on 2018-11-01 at 975e56048f)
160
- + commit-reach.h: add missing declarations (hdr-check)
161
- + ewok_rlw.h: add missing 'inline' to function definition
162
- + fetch-object.h: add missing declaration (hdr-check)
172
+* jk/stream-pack-non-delta-clarification (2018-10-31) 1 commit
173
+ (merged to 'next' on 2018-11-03 at bd386692c8)
174
+ + read_istream_pack_non_delta(): document input handling
175
164
- Code cleanup.
176
+ Additional comment on a tricky piece of code to help developers.
177
+
178
+
179
+* jk/xdiff-interface (2018-11-05) 9 commits
180
+ (merged to 'next' on 2018-11-05 at 0edd69cdad)
181
+ + xdiff-interface: drop parse_hunk_header()
182
+ + range-diff: use a hunk callback
183
+ + diff: convert --check to use a hunk callback
184
+ + combine-diff: use an xdiff hunk callback
185
+ + diff: use hunk callback for word-diff
186
+ + diff: discard hunk headers for patch-ids earlier
187
+ + diff: avoid generating unused hunk header lines
188
+ + xdiff-interface: provide a separate consume callback for hunks
189
+ + xdiff: provide a separate emit callback for hunks
190
+
191
+ The interface into "xdiff" library used to discover the offset and
192
+ size of a generated patch hunk by first formatting it into the
193
+ textual hunk header "@@ -n,m +k,l @@" and then parsing the numbers
194
+ out. A new interface has been introduced to allow callers a more
195
+ direct access to them.
196
+
197
+
198
+* js/mingw-isatty-and-dup2 (2018-10-31) 1 commit
199
+ (merged to 'next' on 2018-11-03 at 0616899d9e)
200
+ + mingw: fix isatty() after dup2()
201
+
202
+ Windows fix.
203
+
204
+
205
+* js/mingw-perl5lib (2018-10-31) 4 commits
206
+ (merged to 'next' on 2018-11-03 at 2fa516f3ae)
207
+ + mingw: unset PERL5LIB by default
208
+ + config: move Windows-specific config settings into compat/mingw.c
209
+ + config: allow for platform-specific core.* config settings
210
+ + config: rename `dummy` parameter to `cb` in git_default_config()
211
+
212
+ Windows fix.
213
+
214
+
215
+* js/mingw-utf8-env (2018-10-31) 2 commits
216
+ (merged to 'next' on 2018-11-03 at f6c5a8b609)
217
+ + mingw: reencode environment variables on the fly (UTF-16 <-> UTF-8)
218
+ + t7800: fix quoting
219
+
220
+ Windows fix.
221
+
222
+
223
+* js/rebase-p-tests (2018-11-02) 3 commits
224
+ (merged to 'next' on 2018-11-03 at fc8d97465f)
225
+ + tests: optionally skip `git rebase -p` tests
226
+ + t3418: decouple test cases from a previous `rebase -p` test case
227
+ + t3404: decouple some test cases from outcomes of previous test cases
228
+
229
+ In preparation to the day when we can deprecate and remove the
230
+ "rebase -p", make sure we can skip and later remove tests for
231
+ it.
232
+
233
+
234
+* jt/tighten-fetch-proto-v2-response (2018-11-01) 1 commit
235
+ (merged to 'next' on 2018-11-03 at 310fe3f2c3)
236
+ + fetch-pack: be more precise in parsing v2 response
237
+
238
+ "git fetch" was a bit loose in parsing resposes from the other side
239
+ when talking over the protocol v2.
240
+
241
+
242
+* ma/sequencer-do-reset-saner-loop-termination (2018-10-31) 1 commit
243
+ (merged to 'next' on 2018-11-03 at 99da78997d)
244
+ + sequencer: break out of loop explicitly
245
+
246
+ Code readability fix.
247
+
248
+
249
+* nb/worktree-api-doc (2018-10-31) 2 commits
250
+ (merged to 'next' on 2018-11-03 at de9befb1f3)
251
+ + worktree: rename is_worktree_locked to worktree_lock_reason
252
+ + worktree: update documentation for lock_reason and lock_reason_valid
253
+
254
+ Code readability fix.
255
+
256
+
257
+* nd/complete-format-patch (2018-11-06) 1 commit
258
+ (merged to 'next' on 2018-11-06 at 7f4c58c9d0)
259
+ + completion: use __gitcomp_builtin for format-patch
260
+
261
+ The support for format-patch (and send-email) by the command-line
262
+ completion script (in contrib/) has been simplified a bit.
263
+
264
+
265
+* nd/config-split (2018-10-29) 79 commits
266
+ (merged to 'next' on 2018-11-03 at a336559101)
267
+ + config.txt: remove config/dummy.txt
268
+ + config.txt: move worktree.* to a separate file
269
+ + config.txt: move web.* to a separate file
270
+ + config.txt: move versionsort.* to a separate file
271
+ + config.txt: move user.* to a separate file
272
+ + config.txt: move url.* to a separate file
273
+ + config.txt: move uploadpack.* to a separate file
274
+ + config.txt: move uploadarchive.* to a separate file
275
+ + config.txt: move transfer.* to a separate file
276
+ + config.txt: move tag.* to a separate file
277
+ + config.txt: move submodule.* to a separate file
278
+ + config.txt: move stash.* to a separate file
279
+ + config.txt: move status.* to a separate file
280
+ + config.txt: move splitIndex.* to a separate file
281
+ + config.txt: move showBranch.* to a separate file
282
+ + config.txt: move sequencer.* to a separate file
283
+ + config.txt: move sendemail-config.txt to config/
284
+ + config.txt: move reset.* to a separate file
285
+ + config.txt: move rerere.* to a separate file
286
+ + config.txt: move repack.* to a separate file
287
+ + config.txt: move remotes.* to a separate file
288
+ + config.txt: move remote.* to a separate file
289
+ + config.txt: move receive-config.txt to config/
290
+ + config.txt: move rebase-config.txt to config/
291
+ + config.txt: move push-config.txt to config/
292
+ + config.txt: move pull-config.txt to config/
293
+ + config.txt: move protocol.* to a separate file
294
+ + config.txt: move pretty.* to a separate file
295
+ + config.txt: move pager.* to a separate file
296
+ + config.txt: move pack.* to a separate file
297
+ + config.txt: move notes.* to a separate file
298
+ + config.txt: move mergetool.* to a separate file
299
+ + config.txt: move merge-config.txt to config/
300
+ + config.txt: move man.* to a separate file
301
+ + config.txt: move mailmap.* to a separate file
302
+ + config.txt: move mailinfo.* to a separate file
303
+ + config.txt: move log.* to a separate file
304
+ + config.txt: move interactive.* to a separate file
305
+ + config.txt: move instaweb.* to a separate file
306
+ + config.txt: move init.* to a separate file
307
+ + config.txt: move index.* to a separate file
308
+ + git-imap-send.txt: move imap.* to a separate file
309
+ + config.txt: move i18n.* to a separate file
310
+ + config.txt: move http.* to a separate file
311
+ + config.txt: move ssh.* to a separate file
312
+ + config.txt: move help.* to a separate file
313
+ + config.txt: move guitool.* to a separate file
314
+ + config.txt: move gui-config.txt to config/
315
+ + config.txt: move gpg.* to a separate file
316
+ + config.txt: move grep.* to a separate file
317
+ + config.txt: move gitweb.* to a separate file
318
+ + config.txt: move gitcvs-config.txt to config/
319
+ + config.txt: move gc.* to a separate file
320
+ + config.txt: move fsck.* to a separate file
321
+ + config.txt: move fmt-merge-msg-config.txt to config/
322
+ + config.txt: move format-config.txt to config/
323
+ + config.txt: move filter.* to a separate file
324
+ + config.txt: move fetch-config.txt to config/
325
+ + config.txt: move fastimport.* to a separate file
326
+ + config.txt: move difftool.* to a separate file
327
+ + config.txt: move diff-config.txt to config/
328
+ + config.txt: move completion.* to a separate file
329
+ + config.txt: move credential.* to a separate file
330
+ + config.txt: move commit.* to a separate file
331
+ + config.txt: move column.* to a separate file
332
+ + config.txt: move color.* to a separate file
333
+ + config.txt: move clean.* to a separate file
334
+ + config.txt: move checkout.* to a separate file
335
+ + config.txt: move browser.* to a separate file
336
+ + config.txt: move branch.* to a separate file
337
+ + config.txt: move blame.* to a separate file
338
+ + config.txt: move apply.* to a separate file
339
+ + config.txt: move am.* to a separate file
340
+ + config.txt: move alias.* to a separate file
341
+ + config.txt: move add.* to a separate file
342
+ + config.txt: move core.* to a separate file
343
+ + config.txt: move advice.* to a separate file
344
+ + Update makefile in preparation for Documentation/config/*.txt
345
+ + Merge branches 'bp/reset-quiet' and 'js/mingw-http-ssl' into nd/config-split
346
+ (this branch uses bp/reset-quiet.)
347
348
+ Split the overly large Documentation/config.txt file into million
349
+ little pieces. This potentially allows each individual piece
350
+ included into the manual page of the command it affects more easily.
351
167
-* sb/submodule-url-to-absolute (2018-10-18) 1 commit
168
- (merged to 'next' on 2018-10-29 at 4264c150cb)
169
- + submodule helper: convert relative URL to absolute URL if needed
352
+ This is a painful conversions while many other topics in flight
353
+ wants to add to or edit the documentation of configuration
354
+ variables.
355
171
- Some codepaths failed to form a proper URL when .gitmodules record
172
- the URL to a submodule repository as relative to the repository of
173
- superproject, which has been corrected.
356
357
+* nd/per-worktree-config (2018-10-22) 2 commits
358
+ (merged to 'next' on 2018-11-01 at 3746343ca8)
359
+ + worktree: add per-worktree config files
360
+ + t1300: extract and use test_cmp_config()
361
176
-* sg/test-rebase-editor-fix (2018-10-29) 1 commit
177
- (merged to 'next' on 2018-11-01 at 271e0fc663)
178
- + t3404-rebase-interactive: test abbreviated commands
362
+ A fourth class of configuration files (in addition to the
363
+ traditional "system wide", "per user in the $HOME directory" and
364
+ "per repository in the $GIT_DIR/config") has been introduced so
365
+ that different worktrees that share the same repository (hence the
366
+ same $GIT_DIR/config file) can use different customization.
367
368
181
-* sg/test-verbose-log (2018-10-30) 1 commit
182
- (merged to 'next' on 2018-11-01 at 0c4a18a71f)
183
- + test-lib: introduce the '-V' short option for '--verbose-log'
369
+* nd/per-worktree-ref-iteration (2018-11-05) 9 commits
370
+ (merged to 'next' on 2018-11-06 at 53803cedf3)
371
+ + git-worktree.txt: correct linkgit command name
372
+ (merged to 'next' on 2018-11-03 at 4cbe49a704)
373
+ + reflog expire: cover reflog from all worktrees
374
+ + fsck: check HEAD and reflog from other worktrees
375
+ + fsck: move fsck_head_link() to get_default_heads() to avoid some globals
376
+ + revision.c: better error reporting on ref from different worktrees
377
+ + revision.c: correct a parameter name
378
+ + refs: new ref types to make per-worktree refs visible to all worktrees
379
+ + Add a place for (not) sharing stuff between worktrees
380
+ + refs.c: indent with tabs, not spaces
381
185
- Our test scripts can now take the '-V' option as a synonym for the
186
- '--verbose-log' option.
382
+ The code to traverse objects for reachability, used to decide what
383
+ objects are unreferenced and expendable, have been taught to also
384
+ consider per-worktree refs of other worktrees as starting points to
385
+ prevent data loss.
386
387
189
-* ss/travis-ci-force-vm-mode (2018-10-26) 1 commit
190
- (merged to 'next' on 2018-11-01 at 8596bb2a65)
191
- + travis-ci: no longer use containers
192
- (this branch is used by sg/travis-install-dependencies.)
388
+* nd/tree-walk-path-exclusion (2018-11-05) 1 commit
389
+ (merged to 'next' on 2018-11-06 at 6499b2d327)
390
+ + tree-walk.c: fix overoptimistic inclusion in :(exclude) matching
391
194
- The "container" mode of TravisCI is going away. Our .travis.yml
195
- file is getting prepared for the transition.
392
+ Pathspec matching against a tree object were buggy when negative
393
+ pathspec elements were involved, which has been fixed.
394
395
198
-* tb/char-may-be-unsigned (2018-10-26) 1 commit
199
- (merged to 'next' on 2018-11-01 at 9e14f289f8)
200
- + path.c: char is not (always) signed
396
+* nd/wildmatch-double-asterisk (2018-10-29) 1 commit
397
+ (merged to 'next' on 2018-11-01 at 627186d020)
398
+ + wildmatch: change behavior of "foo**bar" in WM_PATHNAME mode
399
202
- Build portability fix.
400
+ A pattern with '**' that does not have a slash on either side used
401
+ to be an invalid one, but the code now treats such double-asterisks
402
+ the same way as two normal asterisks that happen to be adjacent to
403
+ each other.
404
+
405
+
406
+* pw/am-rebase-read-author-script (2018-11-01) 5 commits
407
+ (merged to 'next' on 2018-11-03 at bb6c32fe16)
408
+ + sequencer: use read_author_script()
409
+ + add read_author_script() to libgit
410
+ + am: rename read_author_script()
411
+ + am: improve author-script error reporting
412
+ + am: don't die in read_author_script()
413
+
414
+ Unify code to read the author-script used in "git am" and the
415
+ commands that use the sequencer machinery, e.g. "git rebase -i".
416
+
417
+
418
+* sg/travis-install-dependencies (2018-11-02) 1 commit
419
+ (merged to 'next' on 2018-11-06 at b86e3a2792)
420
+ + travis-ci: install packages in 'ci/install-dependencies.sh'
421
+
422
+ The procedure to install dependencies before testing at Travis CI
423
+ is getting revamped for both simplicity and flexibility, taking
424
+ advantage of the recent move to the vm-based environment.
425
+
426
+
427
+* sh/mingw-safer-compat-poll (2018-11-05) 1 commit
428
+ (merged to 'next' on 2018-11-05 at 933a940a68)
429
+ + poll: use GetTickCount64() to avoid wrap-around issues
430
+
431
+ Windows fix.
432
433
--------------------------------------------------
434
[New Topics]
435
207
-* jk/misc-unused-fixes (2018-11-07) 4 commits
208
- (merged to 'next' on 2018-11-07 at 8438c0b245)
209
- + approxidate: fix NULL dereference in date_time()
210
- (merged to 'next' on 2018-11-05 at 03429f23c4)
211
- + pathspec: handle non-terminated strings with :(attr)
212
- + approxidate: handle pending number for "specials"
213
- + rev-list: handle flags for --indexed-objects
436
+* js/rebase-autostash-detach-fix (2018-11-08) 2 commits
437
+ - built-in rebase --autostash: leave the current branch alone if possible
438
+ - built-in rebase: demonstrate regression with --autostash
439
215
- Assorted fixes for bugs found while auditing -Wunused-parameter
216
- warnings.
440
+ "git rebase --autostash" did not correctly re-attach the HEAD at times.
441
218
- Will merge to 'master'.
442
+ Will merge to 'next'.
443
+
444
+
445
+* en/rebase-merge-on-sequencer (2018-11-08) 2 commits
446
+ - rebase: implement --merge via git-rebase--interactive
447
+ - git-rebase, sequencer: extend --quiet option for the interactive machinery
448
+
449
+ "git rebase --merge" as been reimplemented by reusing the internal
450
+ machinery used for "git rebase -i".
451
+
452
+
453
+* js/mailmap (2018-11-12) 1 commit
454
+ - Update .mailmap
455
+
456
+ Update the mailmap to unify multiple entries for the authors with
457
+ commits since v2.10.
458
+
459
+ Will merge to 'next'.
460
+
461
+
462
+* fc/http-version (2018-11-09) 1 commit
463
+ - http: add support selecting http version
464
+
465
+ The "http.version" configuration variable can be used with recent
466
+ enough cURL library to force the version of HTTP used to talk when
467
+ fetching and pushing.
468
+
469
+ Will merge to 'next'.
470
+
471
+
472
+* ag/p3400-force-checkout (2018-11-12) 1 commit
473
+ - p3400: replace calls to `git checkout -b' by `git checkout -B'
474
+
475
+ Perf test tweak.
476
+
477
+ Will merge to 'next'.
478
+
479
+
480
+* cb/notes-freeing-always-null-fix (2018-11-13) 1 commit
481
+ - builtin/notes: remove unnecessary free
482
+
483
+ Code cleanup.
484
+
485
+ Will merge to 'next'.
486
+
487
+
488
+* dl/remote-save-to-push (2018-11-13) 1 commit
489
+ - remote: add --save-to-push option to git remote set-url
490
+
491
+ "git remote set-url" learned a new option that moves existing value
492
+ of the URL field to pushURL field of the remote before replacing
493
+ the URL field with a new value.
494
+
495
+ Undecided.
496
+
497
+
498
+* jk/loose-object-cache (2018-11-13) 9 commits
499
+ - fetch-pack: drop custom loose object cache
500
+ - sha1-file: use loose object cache for quick existence check
501
+ - object-store: provide helpers for loose_objects_cache
502
+ - sha1-file: use an object_directory for the main object dir
503
+ - handle alternates paths the same as the main object dir
504
+ - sha1_file_name(): overwrite buffer instead of appending
505
+ - rename "alternate_object_database" to "object_directory"
506
+ - submodule--helper: prefer strip_suffix() to ends_with()
507
+ - fsck: do not reuse child_process structs
508
+
509
+ Code clean-up with optimization for the codepath that checks
510
+ (non-)existence of loose objects.
511
+
512
+ Will merge to 'next'.
513
+
514
+
515
+* js/apply-recount-allow-noop (2018-11-13) 1 commit
516
+ - apply --recount: allow "no-op hunks"
517
+
518
+ When editing a patch in a "git add -i" session, a hunk could be
519
+ made to no-op. The "git apply" program used to reject a patch with
520
+ such a no-op hunk to catch user mistakes, but it is now updated to
521
+ explicitly allow a no-op hunk in an edited patch.
522
+
523
+ Will merge to 'next'.
524
+
525
+
526
+* js/builtin-rebase-perf-fix (2018-11-13) 3 commits
527
+ - built-in rebase: reinstate `checkout -q` behavior where appropriate
528
+ - rebase: prepare reset_head() for more flags
529
+ - rebase: consolidate clean-up code before leaving reset_head()
530
+
531
+ Code clean-up with correction to make the reimplemented "git
532
+ rebase" a more faithful rewrite of the original, which also regains
533
+ performance.
534
+
535
+ Will merge to 'next'.
536
+
537
+
538
+* js/protocol-advertise-multi (2018-11-13) 2 commits
539
+ - SQUASH??? apply cocci fix
540
+ - protocol: advertise multiple supported versions
541
+
542
+ The transport layer has been updated so that the protocol version
543
+ used can be negotiated between the parties, by the initiator
544
+ listing the protocol versions it is willing to talk, and the other
545
+ side choosing from one of them.
546
+
547
+
548
+* js/rebase-r-and-merge-head (2018-11-13) 5 commits
549
+ - status: rebase and merge can be in progress at the same time
550
+ - built-in rebase --skip/--abort: clean up stale .git/<name> files
551
+ - rebase -i: include MERGE_HEAD into files to clean up
552
+ - rebase -r: do not write MERGE_HEAD unless needed
553
+ - rebase -r: demonstrate bug with conflicting merges
554
+
555
+ Bugfix for the recently graduated "git rebase --rebase-merges".
556
+
557
+ Will merge to 'next'.
558
+
559
+
560
+* js/smart-http-detect-remote-error (2018-11-13) 1 commit
561
+ - remote-curl: die on server-side errors
562
+
563
+ Some errors from the other side coming over smart HTTP transport
564
+ were not noticed, which has been corrected.
565
+
566
+ Will merge to 'next'.
567
+
568
+
569
+* nb/branch-show-other-worktrees-head (2018-11-12) 2 commits
570
+ - branch: mark and colorize a branch differently if it is checked out in a linked worktree
571
+ - ref-filter: add worktree atom
572
+
573
+ "git branch --list" learned to show branches that are checked out
574
+ in other worktrees connected to the same repository prefixed with
575
+ '+', similar to the way the currently checked out branch is shown
576
+ with '*' in front.
577
+
578
+ Expecting a reroll.
579
+
580
+
581
+* nd/command-list-gen-fix (2018-11-12) 1 commit
582
+ - build: fix broken command-list.h generation with core.autocrlf
583
+
584
+ Build tweak.
585
+
586
+ Will merge to 'next'.
587
+
588
+
589
+* nd/format-patch-cover-letter-stat-width (2018-11-13) 1 commit
590
+ - format-patch: respect --stat in cover letter's diffstat
591
+
592
+ "git format-patch --stat=<width>" can be used to specify the width
593
+ used by the diffstat (shown in the cover letter).
594
+
595
+ Will merge to 'next'.
596
+
597
+
598
+* nd/the-index (2018-11-12) 22 commits
599
+ - rebase-interactive.c: remove the_repository references
600
+ - rerere.c: remove the_repository references
601
+ - pack-*.c: remove the_repository references
602
+ - pack-check.c: remove the_repository references
603
+ - notes-cache.c: remove the_repository references
604
+ - line-log.c: remove the_repository reference
605
+ - diff-lib.c: remove the_repository references
606
+ - delta-islands.c: remove the_repository references
607
+ - cache-tree.c: remove the_repository references
608
+ - bundle.c: remove the_repository references
609
+ - branch.c: remove the_repository reference
610
+ - bisect.c: remove the_repository reference
611
+ - blame.c: remove implicit dependency the_repository
612
+ - sequencer.c: remove implicit dependency on the_repository
613
+ - sequencer.c: remove implicit dependency on the_index
614
+ - transport.c: remove implicit dependency on the_index
615
+ - notes-merge.c: remove implicit dependency the_repository
616
+ - notes-merge.c: remove implicit dependency on the_index
617
+ - list-objects.c: reduce the_repository references
618
+ - list-objects-filter.c: remove implicit dependency on the_index
619
+ - wt-status.c: remove implicit dependency the_repository
620
+ - wt-status.c: remove implicit dependency on the_index
621
+
622
+ More codepaths become aware of working with in-core repository
623
+ instance other than the default "the_repository".
624
+
625
+ Will merge to 'next'.
626
+
627
+
628
+* ot/ref-filter-object-info (2018-11-12) 5 commits
629
+ - ref-filter: add docs for new options
630
+ - ref-filter: add tests for deltabase
631
+ - ref-filter: add deltabase option
632
+ - ref-filter: add tests for objectsize:disk
633
+ - ref-filter: add objectsize:disk option
634
+
635
+ The "--format=<placeholder>" option of for-each-ref, branch and tag
636
+ learned to show a few more traits of objects that can be learned by
637
+ the object_info API.
638
639
+ Will merge to 'next'.
640
221
-* jk/xdiff-interface (2018-11-05) 9 commits
222
- (merged to 'next' on 2018-11-05 at 0edd69cdad)
223
- + xdiff-interface: drop parse_hunk_header()
224
- + range-diff: use a hunk callback
225
- + diff: convert --check to use a hunk callback
226
- + combine-diff: use an xdiff hunk callback
227
- + diff: use hunk callback for word-diff
228
- + diff: discard hunk headers for patch-ids earlier
229
- + diff: avoid generating unused hunk header lines
230
- + xdiff-interface: provide a separate consume callback for hunks
231
- + xdiff: provide a separate emit callback for hunks
641
233
- The interface into "xdiff" library used to discover the offset and
234
- size of a generated patch hunk by first formatting it into the
235
- textual hunk header "@@ -n,m +k,l @@" and then parsing the numbers
236
- out. A new interface has been introduced to allow callers a more
237
- direct access to them.
642
+* ra/rev-parse-exclude-glob (2018-11-13) 2 commits
643
+ - refs: fix some exclude patterns being ignored
644
+ - refs: show --exclude failure with --branches/tags/remotes=glob
645
239
- Will merge to 'master'.
646
+ "rev-parse --exclude=<pattern> --branches=<pattern>" etc. did not
647
+ quite work, which has been corrected.
648
649
+ Will merge to 'next'.
650
242
-* al/send-email-auto-cte-fixup (2018-11-02) 1 commit
243
- (merged to 'next' on 2018-11-05 at 4ecb1133ce)
244
- + send-email: avoid empty transfer encoding header
651
246
- "git send-email --transfer-encoding=..." in recent versions of Git
247
- sometimes produced an empty "Content-Transfer-Encoding:" header,
248
- which has been corrected.
652
+* sb/cocci-pending (2018-11-11) 1 commit
653
+ - coccicheck: introduce 'pending' semantic patches
654
250
- Will merge to 'master'.
655
+ A coding convention around the Coccinelle semantic patches to have
656
+ two classes to ease code migration process has been proposed and
657
+ its support has been added to the Makefile.
658
659
+ Will merge to 'next'.
660
253
-* bp/add-diff-files-optim (2018-11-03) 1 commit
254
- (merged to 'next' on 2018-11-06 at cdaeb7924a)
255
- + add: speed up cmd_add() by utilizing read_cache_preload()
661
257
- "git add" needs to internally run "diff-files" equivalent, and the
258
- codepath learned the same optimization as "diff-files" has to run
259
- lstat(2) in parallel to find which paths have been updated in the
260
- working tree.
662
+* tb/print-size-t-with-uintmax-format (2018-11-12) 1 commit
663
+ - Upcast size_t variables to uintmax_t when printing
664
262
- Will merge to 'master'.
665
+ Code preparation to replace ulong vars with size_t vars where
666
+ appropriate.
667
668
+ Will merge to 'next'.
669
265
-* ds/add-missing-tags (2018-11-03) 3 commits
266
- (merged to 'next' on 2018-11-05 at 8388baf76d)
267
- + remote: make add_missing_tags() linear
268
- + test-reach: test get_reachable_subset
269
- + commit-reach: implement get_reachable_subset
670
271
- The history traversal used to implement the tag-following has been
272
- optimized by introducing a new helper.
671
+* tb/xcurl-off-t (2018-11-12) 1 commit
672
+ - remote-curl.c: xcurl_off_t is not portable (on 32 bit platfoms)
673
274
- Will merge to 'master'.
674
+ The xcurl_off_t() helper function is used to cast size_t to
675
+ curl_off_t, but some compilers gave warnings against the code to
676
+ ensure the casting is done without wraparound, when size_t is
677
+ narrower than curl_off_t. This warning has been squelched.
678
679
+ Will merge to 'next'.
680
277
-* ag/rebase-i-in-c (2018-11-05) 1 commit
278
- (merged to 'next' on 2018-11-06 at 8fa9d64898)
279
- + sequencer.c: remove a stray semicolon
681
+--------------------------------------------------
682
+[Stalled]
683
281
- Code clean-up for a topic already in 'master'.
684
+* lt/date-human (2018-07-09) 1 commit
685
+ - Add 'human' date format
686
283
- Will merge to 'master'.
687
+ A new date format "--date=human" that morphs its output depending
688
+ on how far the time is from the current time has been introduced.
689
+ "--date=auto" can be used to use this new format when the output is
690
+ goint to the pager or to the terminal and otherwise the default
691
+ format.
692
693
+--------------------------------------------------
694
+[Cooking]
695
696
* jk/curl-ldflags (2018-11-05) 1 commit
287
- - build: link with curl-defined linker flags
697
+ (merged to 'next' on 2018-11-13 at d1387a3aa0)
698
+ + build: link with curl-defined linker flags
699
700
The way -lcurl library gets linked has been simplified by taking
701
advantage of the fact that we can just ask curl-config command how.
702
292
- Will merge to 'next'.
703
+ Will merge to 'master'.
704
705
706
* mg/gpg-fingerprint-test (2018-11-05) 2 commits
296
- - t/t7510-signed-commit.sh: add signing subkey to Eris Discordia key
297
- - t/t7510-signed-commit.sh: Add %GP to custom format checks
707
+ (merged to 'next' on 2018-11-13 at 71f11020c4)
708
+ + t/t7510-signed-commit.sh: add signing subkey to Eris Discordia key
709
+ + t/t7510-signed-commit.sh: Add %GP to custom format checks
710
711
Add a few tests for a topic already in 'master'.
712
301
- Will merge to 'next'.
302
-
303
-
304
-* nd/tree-walk-path-exclusion (2018-11-05) 1 commit
305
- (merged to 'next' on 2018-11-06 at 6499b2d327)
306
- + tree-walk.c: fix overoptimistic inclusion in :(exclude) matching
307
-
308
- Pathspec matching against a tree object were buggy when negative
309
- pathspec elements were involved, which has been fixed.
310
-
713
Will merge to 'master'.
714
715
@@ -315,36 +717,41 @@ of the repositories listed at
717
- diff: differentiate error handling in parse_color_moved_ws
718
719
318
-* ab/range-diff-no-patch (2018-11-07) 1 commit
319
- - range-diff: add a --no-patch option to show a summary
720
+* ab/range-diff-no-patch (2018-11-12) 4 commits
721
+ - SQUASH???
722
+ - range-diff: make diff option behavior (e.g. --stat) consistent
723
+ - range-diff: fix regression in passing along diff options
724
+ - range-diff doc: add a section about output stability
725
321
- "range-diff" learns the "--no-patch" option, which can be used to
322
- get a high-level overview without the actual line-by-line patch
323
- difference shown.
726
+ The "--no-patch" option, which can be used to get a high-level
727
+ overview without the actual line-by-line patch difference shown, of
728
+ the "range-diff" command was earlier broken, which has been
729
+ corrected.
730
325
- Will merge to 'next'.
731
+ Waiting for a response to squashable fix.
732
733
734
* jk/unused-parameter-fixes (2018-11-06) 14 commits
329
- - midx: double-check large object write loop
330
- - assert NOARG/NONEG behavior of parse-options callbacks
331
- - parse-options: drop OPT_DATE()
332
- - apply: return -1 from option callback instead of calling exit(1)
333
- - cat-file: report an error on multiple --batch options
334
- - tag: mark "--message" option with NONEG
335
- - show-branch: mark --reflog option as NONEG
336
- - format-patch: mark "--no-numbered" option with NONEG
337
- - status: mark --find-renames option with NONEG
338
- - cat-file: mark batch options with NONEG
339
- - pack-objects: mark index-version option as NONEG
340
- - ls-files: mark exclude options as NONEG
341
- - am: handle --no-patch-format option
342
- - apply: mark include/exclude options as NONEG
735
+ (merged to 'next' on 2018-11-13 at 8d3625b4ae)
736
+ + midx: double-check large object write loop
737
+ + assert NOARG/NONEG behavior of parse-options callbacks
738
+ + parse-options: drop OPT_DATE()
739
+ + apply: return -1 from option callback instead of calling exit(1)
740
+ + cat-file: report an error on multiple --batch options
741
+ + tag: mark "--message" option with NONEG
742
+ + show-branch: mark --reflog option as NONEG
743
+ + format-patch: mark "--no-numbered" option with NONEG
744
+ + status: mark --find-renames option with NONEG
745
+ + cat-file: mark batch options with NONEG
746
+ + pack-objects: mark index-version option as NONEG
747
+ + ls-files: mark exclude options as NONEG
748
+ + am: handle --no-patch-format option
749
+ + apply: mark include/exclude options as NONEG
750
751
Various functions have been audited for "-Wunused-parameter" warnings
752
and bugs in them got fixed.
753
347
- Will merge to 'next'.
754
+ Will merge to 'master'.
755
756
757
* ds/push-squelch-ambig-warning (2018-11-07) 1 commit
@@ -355,70 +762,38 @@ of the repositories listed at
762
which was unnecessary (as it knew that it is feeding raw object
763
names). This has been optimized out.
764
765
+ Will merge to 'next'.
766
+
767
768
* jk/verify-sig-merge-into-void (2018-11-07) 3 commits
360
- - pull: handle --verify-signatures for unborn branch
361
- - merge: handle --verify-signatures for unborn branch
362
- - merge: extract verify_merge_signature() helper
769
+ (merged to 'next' on 2018-11-13 at a207be60ed)
770
+ + pull: handle --verify-signatures for unborn branch
771
+ + merge: handle --verify-signatures for unborn branch
772
+ + merge: extract verify_merge_signature() helper
773
774
"git merge" and "git pull" that merges into an unborn branch used
775
to completely ignore "--verify-signatures", which has been
776
corrected.
777
368
- Will merge to 'next'.
778
+ Will merge to 'master'.
779
780
781
* js/mingw-res-rebuild (2018-11-07) 1 commit
372
- - Windows: force-recompile git.res for differing architectures
782
+ (merged to 'next' on 2018-11-13 at fb736827d1)
783
+ + Windows: force-recompile git.res for differing architectures
784
785
Windows build update.
786
376
- Will merge to 'next'.
377
-
378
---------------------------------------------------
379
-[Stalled]
380
-
381
-* lt/date-human (2018-07-09) 1 commit
382
- - Add 'human' date format
383
-
384
- A new date format "--date=human" that morphs its output depending
385
- on how far the time is from the current time has been introduced.
386
- "--date=auto" can be used to use this new format when the output is
387
- goint to the pager or to the terminal and otherwise the default
388
- format.
787
+ Will merge to 'master'.
788
390
---------------------------------------------------
391
-[Cooking]
789
393
-* ab/dynamic-gettext-poison (2018-11-02) 1 commit
790
+* ab/dynamic-gettext-poison (2018-11-09) 2 commits
791
+ - Makefile: ease dynamic-gettext-poison transition
792
- i18n: make GETTEXT_POISON a runtime option
793
794
On hold.
397
- cf. <20181102163725.GY30222@szeder.dev>
398
-
399
-
400
-* js/rebase-p-tests (2018-11-02) 3 commits
401
- (merged to 'next' on 2018-11-03 at fc8d97465f)
402
- + tests: optionally skip `git rebase -p` tests
403
- + t3418: decouple test cases from a previous `rebase -p` test case
404
- + t3404: decouple some test cases from outcomes of previous test cases
405
-
406
- In preparation to the day when we can deprecate and remove the
407
- "rebase -p", make sure we can skip and later remove tests for
408
- it.
409
-
410
- Will merge to 'master'.
411
-
412
-
413
-* sg/travis-install-dependencies (2018-11-02) 1 commit
414
- (merged to 'next' on 2018-11-06 at b86e3a2792)
415
- + travis-ci: install packages in 'ci/install-dependencies.sh'
416
-
417
- The procedure to install dependencies before testing at Travis CI
418
- is getting revamped for both simplicity and flexibility, taking
419
- advantage of the recent move to the vm-based environment.
420
-
421
- Will merge to 'master'.
795
+ The tip one may be controversial, but at least it would get me going.
796
+ cf. <xmqqpnvg8d5z.fsf@gitster-ct.c.googlers.com>
797
798
799
* ab/push-dwim-dst (2018-10-29) 9 commits
@@ -455,7 +830,7 @@ of the repositories listed at
830
diagnosed as an error, not swept under the rug silently.
831
832
458
-* nd/i18n (2018-11-06) 16 commits
833
+* nd/i18n (2018-11-12) 16 commits
834
- fsck: mark strings for translation
835
- fsck: reduce word legos to help i18n
836
- parse-options.c: mark more strings for translation
@@ -464,165 +839,38 @@ of the repositories listed at
839
- repack: mark more strings for translation
840
- remote.c: mark messages for translation
841
- remote.c: turn some error() or die() to BUG()
467
- - reflog: mark strings for translation
468
- - read-cache.c: add missing colon separators
469
- - read-cache.c: mark more strings for translation
470
- - read-cache.c: turn die("internal error") to BUG()
471
- - attr.c: mark more string for translation
472
- - archive.c: mark more strings for translation
473
- - alias.c: mark split_cmdline_strerror() strings for translation
474
- - git.c: mark more strings for translation
475
-
476
- More _("i18n") markings.
477
-
478
-
479
-* nd/pthreads (2018-11-05) 14 commits
480
- - Clean up pthread_create() error handling
481
- - read-cache.c: initialize copy_len to shut up gcc 8
482
- - read-cache.c: reduce branching based on HAVE_THREADS
483
- - read-cache.c: remove #ifdef NO_PTHREADS
484
- - pack-objects: remove #ifdef NO_PTHREADS
485
- - preload-index.c: remove #ifdef NO_PTHREADS
486
- - grep: clean up num_threads handling
487
- - grep: remove #ifdef NO_PTHREADS
488
- - attr.c: remove #ifdef NO_PTHREADS
489
- - name-hash.c: remove #ifdef NO_PTHREADS
490
- - index-pack: remove #ifdef NO_PTHREADS
491
- - send-pack.c: move async's #ifdef NO_PTHREADS back to run-command.c
492
- - run-command.h: include thread-utils.h instead of pthread.h
493
- - thread-utils: macros to unconditionally compile pthreads API
494
-
495
- The codebase has been cleaned up to reduce "#ifndef NO_PTHREADS".
496
-
497
- Will merge to 'next'.
498
-
499
-
500
-* nd/wildmatch-double-asterisk (2018-10-29) 1 commit
501
- (merged to 'next' on 2018-11-01 at 627186d020)
502
- + wildmatch: change behavior of "foo**bar" in WM_PATHNAME mode
503
-
504
- A pattern with '**' that does not have a slash on either side used
505
- to be an invalid one, but the code now treats such double-asterisks
506
- the same way as two normal asterisks that happen to be adjacent to
507
- each other.
508
-
509
- Will merge to 'master'.
510
-
511
-
512
-* bp/refresh-index-using-preload (2018-11-06) 2 commits
513
- (merged to 'next' on 2018-11-06 at d9b9d8f559)
514
- + refresh_index: remove unnecessary calls to preload_index()
515
- (merged to 'next' on 2018-11-01 at 289e6bcece)
516
- + speed up refresh_index() by utilizing preload_index()
517
-
518
- The helper function to refresh the cached stat information in the
519
- in-core index has learned to perform the lstat() part of the
520
- operation in parallel on multi-core platforms.
521
-
522
- Will merge to 'master'.
523
-
524
-
525
-* ab/pack-tests-cleanup (2018-10-31) 3 commits
526
- (merged to 'next' on 2018-11-03 at b4a39595bb)
527
- + index-pack tests: don't leave test repo dirty at end
528
- + pack-objects tests: don't leave test .git corrupt at end
529
- + pack-objects test: modernize style
530
-
531
- A couple of tests used to leave the repository in a state that is
532
- deliberately corrupt, which have been corrected.
533
-
534
- Will merge to 'master'.
535
-
536
-
537
-* jk/detect-truncated-zlib-input (2018-10-31) 4 commits
538
- (merged to 'next' on 2018-11-03 at 4952b4412b)
539
- + Adjust for 2.19.x series
540
- + cat-file: handle streaming failures consistently
541
- + check_stream_sha1(): handle input underflow
542
- + t1450: check large blob in trailing-garbage test
543
-
544
- A regression in Git 2.12 era made "git fsck" fall into an infinite
545
- loop while processing truncated loose objects.
546
-
547
- Will merge to 'master'.
548
-
549
-
550
-* jk/proto-v2-ref-prefix-fix (2018-10-31) 2 commits
551
- (merged to 'next' on 2018-11-03 at 3a203db692)
552
- + ls-remote: pass heads/tags prefixes to transport
553
- + ls-remote: do not send ref prefixes for patterns
554
-
555
- "git ls-remote $there foo" was broken by recent update for the
556
- protocol v2 and stopped showing refs that match 'foo' that are not
557
- refs/{heads,tags}/foo, which has been fixed.
558
-
559
- Will merge to 'master'.
560
-
561
-
562
-* jk/stream-pack-non-delta-clarification (2018-10-31) 1 commit
563
- (merged to 'next' on 2018-11-03 at bd386692c8)
564
- + read_istream_pack_non_delta(): document input handling
565
-
566
- Additional comment on a tricky piece of code to help developers.
567
-
568
- Will merge to 'master'.
569
-
570
-
571
-* js/mingw-isatty-and-dup2 (2018-10-31) 1 commit
572
- (merged to 'next' on 2018-11-03 at 0616899d9e)
573
- + mingw: fix isatty() after dup2()
574
-
575
- Windows fix.
576
-
577
- Will merge to 'master'.
578
-
579
-
580
-* js/mingw-perl5lib (2018-10-31) 4 commits
581
- (merged to 'next' on 2018-11-03 at 2fa516f3ae)
582
- + mingw: unset PERL5LIB by default
583
- + config: move Windows-specific config settings into compat/mingw.c
584
- + config: allow for platform-specific core.* config settings
585
- + config: rename `dummy` parameter to `cb` in git_default_config()
586
-
587
- Windows fix.
588
-
589
- Will merge to 'master'.
590
-
591
-
592
-* js/mingw-utf8-env (2018-10-31) 2 commits
593
- (merged to 'next' on 2018-11-03 at f6c5a8b609)
594
- + mingw: reencode environment variables on the fly (UTF-16 <-> UTF-8)
595
- + t7800: fix quoting
596
-
597
- Windows fix.
598
-
599
- Will merge to 'master'.
600
-
601
-
602
-* ma/sequencer-do-reset-saner-loop-termination (2018-10-31) 1 commit
603
- (merged to 'next' on 2018-11-03 at 99da78997d)
604
- + sequencer: break out of loop explicitly
605
-
606
- Code readability fix.
607
-
608
- Will merge to 'master'.
609
-
610
-
611
-* nb/worktree-api-doc (2018-10-31) 2 commits
612
- (merged to 'next' on 2018-11-03 at de9befb1f3)
613
- + worktree: rename is_worktree_locked to worktree_lock_reason
614
- + worktree: update documentation for lock_reason and lock_reason_valid
842
+ - reflog: mark strings for translation
843
+ - read-cache.c: add missing colon separators
844
+ - read-cache.c: mark more strings for translation
845
+ - read-cache.c: turn die("internal error") to BUG()
846
+ - attr.c: mark more string for translation
847
+ - archive.c: mark more strings for translation
848
+ - alias.c: mark split_cmdline_strerror() strings for translation
849
+ - git.c: mark more strings for translation
850
616
- Code readability fix.
851
+ More _("i18n") markings.
852
618
- Will merge to 'master'.
853
+ Will merge to 'next'.
854
855
621
-* sh/mingw-safer-compat-poll (2018-11-05) 1 commit
622
- (merged to 'next' on 2018-11-05 at 933a940a68)
623
- + poll: use GetTickCount64() to avoid wrap-around issues
856
+* nd/pthreads (2018-11-05) 14 commits
857
+ (merged to 'next' on 2018-11-13 at bb6914b3f8)
858
+ + Clean up pthread_create() error handling
859
+ + read-cache.c: initialize copy_len to shut up gcc 8
860
+ + read-cache.c: reduce branching based on HAVE_THREADS
861
+ + read-cache.c: remove #ifdef NO_PTHREADS
862
+ + pack-objects: remove #ifdef NO_PTHREADS
863
+ + preload-index.c: remove #ifdef NO_PTHREADS
864
+ + grep: clean up num_threads handling
865
+ + grep: remove #ifdef NO_PTHREADS
866
+ + attr.c: remove #ifdef NO_PTHREADS
867
+ + name-hash.c: remove #ifdef NO_PTHREADS
868
+ + index-pack: remove #ifdef NO_PTHREADS
869
+ + send-pack.c: move async's #ifdef NO_PTHREADS back to run-command.c
870
+ + run-command.h: include thread-utils.h instead of pthread.h
871
+ + thread-utils: macros to unconditionally compile pthreads API
872
625
- Windows fix.
873
+ The codebase has been cleaned up to reduce "#ifndef NO_PTHREADS".
874
875
Will merge to 'master'.
876
@@ -657,9 +905,9 @@ of the repositories listed at
905
cf. <20181030220817.61691-1-sbeller@google.com>
906
907
660
-* en/merge-path-collision (2018-11-05) 10 commits
661
- - fixup! merge-recursive: improve rename/rename(1to2)/add[/add] handling
662
- - fixup! merge-recursive: fix rename/add conflict handling
908
+* en/merge-path-collision (2018-11-08) 10 commits
909
+ - merge-recursive: combine error handling
910
+ - t6036, t6043: increase code coverage for file collision handling
911
- merge-recursive: improve rename/rename(1to2)/add[/add] handling
912
- merge-recursive: use handle_file_collision for add/add conflicts
913
- merge-recursive: improve handling for rename/rename(2to1) conflicts
@@ -667,163 +915,11 @@ of the repositories listed at
915
- merge-recursive: new function for better colliding conflict resolutions
916
- merge-recursive: increase marker length with depth of recursion
917
- t6036, t6042: testcases for rename collision of already conflicting files
670
- - Add testcases for consistency in file collision conflict handling
918
+ - t6042: add tests for consistency in file collision conflict handling
919
920
Updates for corner cases in merge-recursive.
921
674
-
675
-* jt/tighten-fetch-proto-v2-response (2018-11-01) 1 commit
676
- (merged to 'next' on 2018-11-03 at 310fe3f2c3)
677
- + fetch-pack: be more precise in parsing v2 response
678
-
679
- "git fetch" was a bit loose in parsing resposes from the other side
680
- when talking over the protocol v2.
681
-
682
- Will merge to 'master'.
683
-
684
-
685
-* nd/complete-format-patch (2018-11-06) 1 commit
686
- (merged to 'next' on 2018-11-06 at 7f4c58c9d0)
687
- + completion: use __gitcomp_builtin for format-patch
688
-
689
- The support for format-patch (and send-email) by the command-line
690
- completion script (in contrib/) has been simplified a bit.
691
-
692
- Will merge to 'master'.
693
-
694
-
695
-* nd/config-split (2018-10-29) 79 commits
696
- (merged to 'next' on 2018-11-03 at a336559101)
697
- + config.txt: remove config/dummy.txt
698
- + config.txt: move worktree.* to a separate file
699
- + config.txt: move web.* to a separate file
700
- + config.txt: move versionsort.* to a separate file
701
- + config.txt: move user.* to a separate file
702
- + config.txt: move url.* to a separate file
703
- + config.txt: move uploadpack.* to a separate file
704
- + config.txt: move uploadarchive.* to a separate file
705
- + config.txt: move transfer.* to a separate file
706
- + config.txt: move tag.* to a separate file
707
- + config.txt: move submodule.* to a separate file
708
- + config.txt: move stash.* to a separate file
709
- + config.txt: move status.* to a separate file
710
- + config.txt: move splitIndex.* to a separate file
711
- + config.txt: move showBranch.* to a separate file
712
- + config.txt: move sequencer.* to a separate file
713
- + config.txt: move sendemail-config.txt to config/
714
- + config.txt: move reset.* to a separate file
715
- + config.txt: move rerere.* to a separate file
716
- + config.txt: move repack.* to a separate file
717
- + config.txt: move remotes.* to a separate file
718
- + config.txt: move remote.* to a separate file
719
- + config.txt: move receive-config.txt to config/
720
- + config.txt: move rebase-config.txt to config/
721
- + config.txt: move push-config.txt to config/
722
- + config.txt: move pull-config.txt to config/
723
- + config.txt: move protocol.* to a separate file
724
- + config.txt: move pretty.* to a separate file
725
- + config.txt: move pager.* to a separate file
726
- + config.txt: move pack.* to a separate file
727
- + config.txt: move notes.* to a separate file
728
- + config.txt: move mergetool.* to a separate file
729
- + config.txt: move merge-config.txt to config/
730
- + config.txt: move man.* to a separate file
731
- + config.txt: move mailmap.* to a separate file
732
- + config.txt: move mailinfo.* to a separate file
733
- + config.txt: move log.* to a separate file
734
- + config.txt: move interactive.* to a separate file
735
- + config.txt: move instaweb.* to a separate file
736
- + config.txt: move init.* to a separate file
737
- + config.txt: move index.* to a separate file
738
- + git-imap-send.txt: move imap.* to a separate file
739
- + config.txt: move i18n.* to a separate file
740
- + config.txt: move http.* to a separate file
741
- + config.txt: move ssh.* to a separate file
742
- + config.txt: move help.* to a separate file
743
- + config.txt: move guitool.* to a separate file
744
- + config.txt: move gui-config.txt to config/
745
- + config.txt: move gpg.* to a separate file
746
- + config.txt: move grep.* to a separate file
747
- + config.txt: move gitweb.* to a separate file
748
- + config.txt: move gitcvs-config.txt to config/
749
- + config.txt: move gc.* to a separate file
750
- + config.txt: move fsck.* to a separate file
751
- + config.txt: move fmt-merge-msg-config.txt to config/
752
- + config.txt: move format-config.txt to config/
753
- + config.txt: move filter.* to a separate file
754
- + config.txt: move fetch-config.txt to config/
755
- + config.txt: move fastimport.* to a separate file
756
- + config.txt: move difftool.* to a separate file
757
- + config.txt: move diff-config.txt to config/
758
- + config.txt: move completion.* to a separate file
759
- + config.txt: move credential.* to a separate file
760
- + config.txt: move commit.* to a separate file
761
- + config.txt: move column.* to a separate file
762
- + config.txt: move color.* to a separate file
763
- + config.txt: move clean.* to a separate file
764
- + config.txt: move checkout.* to a separate file
765
- + config.txt: move browser.* to a separate file
766
- + config.txt: move branch.* to a separate file
767
- + config.txt: move blame.* to a separate file
768
- + config.txt: move apply.* to a separate file
769
- + config.txt: move am.* to a separate file
770
- + config.txt: move alias.* to a separate file
771
- + config.txt: move add.* to a separate file
772
- + config.txt: move core.* to a separate file
773
- + config.txt: move advice.* to a separate file
774
- + Update makefile in preparation for Documentation/config/*.txt
775
- + Merge branches 'bp/reset-quiet' and 'js/mingw-http-ssl' into nd/config-split
776
- (this branch uses bp/reset-quiet.)
777
-
778
- Split the overly large Documentation/config.txt file into million
779
- little pieces. This potentially allows each individual piece
780
- included into the manual page of the command it affects more easily.
781
-
782
- Will merge to 'master'.
783
-
784
- This is a painful conversions while many other topics in flight
785
- wants to add to or edit the documentation of configuration
786
- variables.
787
-
788
-
789
-* nd/per-worktree-config (2018-10-22) 2 commits
790
- (merged to 'next' on 2018-11-01 at 3746343ca8)
791
- + worktree: add per-worktree config files
792
- + t1300: extract and use test_cmp_config()
793
-
794
- A fourth class of configuration files (in addition to the
795
- traditional "system wide", "per user in the $HOME directory" and
796
- "per repository in the $GIT_DIR/config") has been introduced so
797
- that different worktrees that share the same repository (hence the
798
- same $GIT_DIR/config file) can use different customization.
799
-
800
- Will merge to 'master'.
801
-
802
-
803
-* ag/rev-parse-all-exclude-fix (2018-11-01) 1 commit
804
- (merged to 'next' on 2018-11-03 at 49730558fa)
805
- + rev-parse: clear --exclude list after 'git rev-parse --all'
806
-
807
- "git rev-parse --exclude=* --branches --branches" (i.e. first
808
- saying "add only things that do not match '*' out of all branches"
809
- and then adding all branches, without any exclusion this time")
810
- worked as expected, but "--exclude=* --all --all" did not work the
811
- same way, which has been fixed.
812
-
813
- Will merge to 'master'.
814
-
815
-
816
-* bp/reset-quiet (2018-10-24) 3 commits
817
- (merged to 'next' on 2018-10-29 at 71f4fbc802)
818
- + reset: warn when refresh_index() takes more than 2 seconds
819
- + reset: add new reset.quiet config setting
820
- + reset: don't compute unstaged changes after reset when --quiet
821
- (this branch is used by nd/config-split.)
822
-
823
- "git reset --quiet" no longer runs "update-index --refresh"
824
- internally, which shifts the refresh cost away from the command.
825
-
826
- Will merge to 'master'.
922
+ Will merge to 'next'.
923
924
925
* sd/stash-wo-user-name (2018-11-02) 1 commit
@@ -832,20 +928,6 @@ of the repositories listed at
928
An early part of a wip.
929
930
835
-* pw/am-rebase-read-author-script (2018-11-01) 5 commits
836
- (merged to 'next' on 2018-11-03 at bb6c32fe16)
837
- + sequencer: use read_author_script()
838
- + add read_author_script() to libgit
839
- + am: rename read_author_script()
840
- + am: improve author-script error reporting
841
- + am: don't die in read_author_script()
842
-
843
- Unify code to read the author-script used in "git am" and the
844
- commands that use the sequencer machinery, e.g. "git rebase -i".
845
-
846
- Will merge to 'master'.
847
-
848
-
931
* bc/sha-256 (2018-11-05) 12 commits
932
- hash: add an SHA-256 implementation using OpenSSL
933
- sha256: add an SHA-256 implementation using libgcrypt
@@ -865,25 +947,30 @@ of the repositories listed at
947
948
949
* js/vsts-ci (2018-10-16) 13 commits
868
- - travis: fix skipping tagged releases
869
- - README: add a build badge (status of the Azure Pipelines build)
870
- - tests: record more stderr with --write-junit-xml in case of failure
871
- - tests: include detailed trace logs with --write-junit-xml upon failure
872
- - git-p4: use `test_atexit` to kill the daemon
873
- - git-daemon: use `test_atexit` in the tests
874
- - tests: introduce `test_atexit`
875
- - ci: add a build definition for Azure DevOps
876
- - ci/lib.sh: add support for Azure Pipelines
877
- - tests: optionally write results as JUnit-style .xml
878
- - test-date: add a subcommand to measure times in shell scripts
879
- - ci/lib.sh: encapsulate Travis-specific things
880
- - ci: rename the library of common functions
950
+ . travis: fix skipping tagged releases
951
+ . README: add a build badge (status of the Azure Pipelines build)
952
+ . tests: record more stderr with --write-junit-xml in case of failure
953
+ . tests: include detailed trace logs with --write-junit-xml upon failure
954
+ . git-p4: use `test_atexit` to kill the daemon
955
+ . git-daemon: use `test_atexit` in the tests
956
+ . tests: introduce `test_atexit`
957
+ . ci: add a build definition for Azure DevOps
958
+ . ci/lib.sh: add support for Azure Pipelines
959
+ . tests: optionally write results as JUnit-style .xml
960
+ . test-date: add a subcommand to measure times in shell scripts
961
+ . ci/lib.sh: encapsulate Travis-specific things
962
+ . ci: rename the library of common functions
963
964
Prepare to run test suite on Azure DevOps.
965
884
- On hold, monitoring the discussion.
885
- cf. <nycvar.QRO.7.76.6.1810151657080.4546@tvgsbejvaqbjf.bet>
886
- cf. <nycvar.QRO.7.76.6.1810261033440.4546@tvgsbejvaqbjf.bet>
966
+ Ejected out of 'pu', as doing so seems to help other topics get
967
+ tested at TravisCI.
968
+
969
+ https://travis-ci.org/git/git/builds/452713184 is a sample of a
970
+ build whose tests on 4 hang (with this series in). Ejecting it
971
+ gave us https://travis-ci.org/git/git/builds/452778963 which still
972
+ shows breakages from other topics not yet in 'next', but at least
973
+ the tests do not stall.
974
975
976
* du/branch-show-current (2018-10-26) 1 commit
@@ -903,16 +990,6 @@ of the repositories listed at
990
updated to use "size_t".
991
992
906
-* jc/war-on-string-list (2018-11-01) 1 commit
907
- (merged to 'next' on 2018-11-03 at 2ff65073f1)
908
- + fetch: replace string-list used as a look-up table with a hashmap
909
-
910
- Replace three string-list instances used as look-up tables in "git
911
- fetch" with hashmaps.
912
-
913
- Will merge to 'master'.
914
-
915
-
993
* js/remote-archive-v2 (2018-09-28) 4 commits
994
(merged to 'next' on 2018-10-12 at 5f34377f60)
995
+ archive: allow archive over HTTP(S) with proto v2
@@ -930,23 +1007,23 @@ of the repositories listed at
1007
Breaks interoperability.
1008
1009
933
-* ag/sequencer-reduce-rewriting-todo (2018-10-09) 16 commits
1010
+* ag/sequencer-reduce-rewriting-todo (2018-11-12) 16 commits
1011
. rebase--interactive: move transform_todo_file() to rebase--interactive.c
1012
. sequencer: fix a call to error() in transform_todo_file()
1013
. sequencer: use edit_todo_list() in complete_action()
1014
. rebase-interactive: rewrite edit_todo_list() to handle the initial edit
1015
. rebase-interactive: append_todo_help() changes
939
- . rebase-interactive: use todo_list_transform() in edit_todo_list()
1016
+ . rebase-interactive: use todo_list_write_to_file() in edit_todo_list()
1017
. sequencer: refactor skip_unnecessary_picks() to work on a todo_list
1018
. sequencer: change complete_action() to use the refactored functions
1019
. sequencer: make sequencer_make_script() write its script to a strbuf
943
- . sequencer: refactor transform_todos() to work on a todo_list
1020
. sequencer: refactor rearrange_squash() to work on a todo_list
1021
. sequencer: refactor sequencer_add_exec_commands() to work on a todo_list
1022
. sequencer: refactor check_todo_list() to work on a todo_list
1023
+ . sequencer: introduce todo_list_write_to_file()
1024
+ . sequencer: refactor transform_todos() to work on a todo_list
1025
. sequencer: make the todo_list structure public
948
- . sequencer: clear the number of items of a todo_list before parsing
949
- . Merge branch 'ag/rebase-i-in-c' into ag/sequencer-reduce-rewriting-todo
1026
+ . sequencer: changes in parse_insn_buffer()
1027
1028
The scripted version of "git rebase -i" wrote and rewrote the todo
1029
list many times during a single step of its operation, and the
@@ -955,56 +1032,24 @@ of the repositories listed at
1032
around in-core to avoid rewriting the same file over and over
1033
unnecessarily.
1034
958
- A reroll exists but is based on a stale codebase and is painful to
959
- merge.
960
-
961
-
962
-* ds/test-multi-pack-index (2018-10-26) 4 commits
963
- (merged to 'next' on 2018-11-03 at 624c415a45)
964
- + packfile: close multi-pack-index in close_all_packs
965
- + multi-pack-index: define GIT_TEST_MULTI_PACK_INDEX
966
- + midx: close multi-pack-index on repack
967
- + midx: fix broken free() in close_midx()
968
-
969
- Tests for the recently introduced multi-pack index machinery.
970
-
971
- Will merge to 'master'.
972
-
973
-
974
-* nd/per-worktree-ref-iteration (2018-11-05) 9 commits
975
- (merged to 'next' on 2018-11-06 at 53803cedf3)
976
- + git-worktree.txt: correct linkgit command name
977
- (merged to 'next' on 2018-11-03 at 4cbe49a704)
978
- + reflog expire: cover reflog from all worktrees
979
- + fsck: check HEAD and reflog from other worktrees
980
- + fsck: move fsck_head_link() to get_default_heads() to avoid some globals
981
- + revision.c: better error reporting on ref from different worktrees
982
- + revision.c: correct a parameter name
983
- + refs: new ref types to make per-worktree refs visible to all worktrees
984
- + Add a place for (not) sharing stuff between worktrees
985
- + refs.c: indent with tabs, not spaces
986
-
987
- The code to traverse objects for reachability, used to decide what
988
- objects are unreferenced and expendable, have been taught to also
989
- consider per-worktree refs of other worktrees as starting points to
990
- prevent data loss.
991
-
992
- Will merge to 'master'.
1035
+ With too many topics in-flight that touch sequencer and rebaser,
1036
+ this need to wait giving precedence to other topics that fix bugs.
1037
1038
1039
* ds/reachable-topo-order (2018-11-02) 7 commits
996
- - t6012: make rev-list tests more interesting
997
- - revision.c: generation-based topo-order algorithm
998
- - commit/revisions: bookkeeping before refactoring
999
- - revision.c: begin refactoring --topo-order logic
1000
- - test-reach: add rev-list tests
1001
- - test-reach: add run_three_modes method
1002
- - prio-queue: add 'peek' operation
1040
+ (merged to 'next' on 2018-11-13 at 4155d01aee)
1041
+ + t6012: make rev-list tests more interesting
1042
+ + revision.c: generation-based topo-order algorithm
1043
+ + commit/revisions: bookkeeping before refactoring
1044
+ + revision.c: begin refactoring --topo-order logic
1045
+ + test-reach: add rev-list tests
1046
+ + test-reach: add run_three_modes method
1047
+ + prio-queue: add 'peek' operation
1048
1049
The revision walker machinery learned to take advantage of the
1050
commit generation numbers stored in the commit-graph file.
1051
1007
- Will merge to 'next'.
1052
+ Will merge to 'master'.
1053
1054
1055
* sb/submodule-recursive-fetch-gets-the-tip (2018-10-31) 11 commits
@@ -1019,7 +1064,6 @@ of the repositories listed at
1064
- submodule.c: fix indentation
1065
- sha1-array: provide oid_array_filter
1066
- Merge branch 'ao/submodule-wo-gitmodules-checked-out' into sb/submodule-recursive-fetch-gets-the-tip
1022
- (this branch uses ao/submodule-wo-gitmodules-checked-out.)
1067
1068
"git fetch --recurse-submodules" may not fetch the necessary commit
1069
that is bound to the superproject, which is getting corrected.
@@ -1038,27 +1082,6 @@ of the repositories listed at
1082
cf. <e5b2900a-0558-d3bf-8ea1-d526b078bbc2@talktalk.net>
1083
1084
1041
-* ao/submodule-wo-gitmodules-checked-out (2018-10-31) 10 commits
1042
- (merged to 'next' on 2018-11-03 at 00c3377ef0)
1043
- + t/helper: add test-submodule-nested-repo-config
1044
- + submodule: support reading .gitmodules when it's not in the working tree
1045
- + submodule: add a helper to check if it is safe to write to .gitmodules
1046
- + t7506: clean up .gitmodules properly before setting up new scenario
1047
- + submodule: use the 'submodule--helper config' command
1048
- + submodule--helper: add a new 'config' subcommand
1049
- + t7411: be nicer to future tests and really clean things up
1050
- + t7411: merge tests 5 and 6
1051
- + submodule: factor out a config_set_in_gitmodules_file_gently function
1052
- + submodule: add a print_config_from_gitmodules() helper
1053
- (this branch is used by sb/submodule-recursive-fetch-gets-the-tip.)
1054
-
1055
- The submodule support has been updated to read from the blob at
1056
- HEAD:.gitmodules when the .gitmodules file is missing from the
1057
- working tree.
1058
-
1059
- Will merge to 'master'.
1060
-
1061
-
1085
* ps/stash-in-c (2018-10-15) 21 commits
1086
- stash: replace all `write-tree` child processes with API calls
1087
- stash: optimize `get_untracked_files()` and `check_changes()`