@@ -61,7 +61,6 @@ UI, Workflows & Features
6161
6262 * The SubmittingPatches document has been converted to produce an
6363 HTML version via AsciiDoc/Asciidoctor.
64- (merge 049e64aa50 bc/submitting-patches-in-asciidoc later to maint).
6564
6665 * We learned to talk to watchman to speed up "git status" and other
6766 operations that need to see which paths have been modified.
@@ -90,6 +89,13 @@ UI, Workflows & Features
9089 pattern" (aka "diff.*.xfuncname") to include a comment block, if
9190 exists, that immediately precedes it.
9291
92+ * "git config --expiry-date gc.reflogexpire" can read "2.weeks" from
93+ the configuration and report it as a timestamp, just like "--int"
94+ would read "1k" and report 1024, to help consumption by scripts.
95+
96+ * The shell completion (in contrib/) learned that "git pull" can take
97+ the "--autostash" option.
98+
9399
94100Performance, Internal Implementation, Development Support etc.
95101
@@ -130,6 +136,13 @@ Performance, Internal Implementation, Development Support etc.
130136 * Drop (perhaps overly cautious) sanity check before using the index
131137 read from the filesystem at runtime.
132138
139+ * The build procedure has been taught to avoid some unnecessary
140+ instability in the build products.
141+
142+ * A new mechanism to upgrade the wire protocol in place is proposed
143+ and demonstrated that it works with the older versions of Git
144+ without harming them.
145+
133146Also contains various documentation updates and code clean-ups.
134147
135148
@@ -206,7 +219,6 @@ Fixes since v2.15
206219 * Recent update to the refs infrastructure implementation started
207220 rewriting packed-refs file more often than before; this has been
208221 optimized again for most trivial cases.
209- (merge 7c6bd25c7d mh/avoid-rewriting-packed-refs later to maint).
210222
211223 * Some error messages did not quote filenames shown in it, which have
212224 been fixed.
@@ -226,52 +238,72 @@ Fixes since v2.15
226238
227239 * Clarify and enhance documentation for "merge-base --fork-point", as
228240 it was clear what it computed but not why/what for.
229- (merge 6d1700b8af jc/merge-base-fork-point-doc later to maint).
230241
231242 * A few scripts (both in production and tests) incorrectly redirected
232243 their error output. These have been corrected.
233- (merge eadf1c8f45 tz/redirect-fix later to maint).
234244
235245 * "git notes" sent its error message to its standard output stream,
236246 which was corrected.
237- (merge 89b9e31dd5 tz/notes-error-to-stderr later to maint).
238247
239248 * The three-way merge performed by "git cherry-pick" was confused
240249 when a new submodule was added in the meantime, which has been
241250 fixed (or "papered over").
242- (merge c641ca6707 sb/test-cherry-pick-submodule-getting-in-a-way later to maint).
243251
244252 * The sequencer machinery (used by "git cherry-pick A..B", and "git
245253 rebase -i", among other things) would have lost a commit if stopped
246254 due to an unlockable index file, which has been fixed.
247- (merge bd58886775 pw/sequencer-recover-from-unlockable-index later to maint).
248255
249256 * "git apply --inaccurate-eof" when used with "--ignore-space-change"
250257 triggered an internal sanity check, which has been fixed.
251- (merge 4855de1233 rs/apply-inaccurate-eof-with-incomplete-line later to maint).
252258
253259 * Command line completion (in contrib/) has been taught about the
254260 "--copy" option of "git branch".
255- (merge 41ca0f773e tz/complete-branch-copy later to maint).
256261
257262 * When "git rebase" prepared an mailbox of changes and fed it to "git
258263 am" to replay them, it was confused when a stray "From " happened
259264 to be in the log message of one of the replayed changes. This has
260265 been corrected.
261- (merge ae3b2b04bb ew/rebase-mboxrd later to maint).
262266
263267 * There was a recent semantic mismerge in the codepath to write out a
264268 section of a configuration section, which has been corrected.
265269
266270 * Mentions of "git-rebase" and "git-am" (dashed form) still remained
267271 in end-user visible strings emitted by the "git rebase" command;
268272 they have been corrected.
269- (merge 82cb775c06 ks/rebase-no-git-foo later to maint).
270273
271274 * Contrary to the documentation, "git pull -4/-6 other-args" did not
272275 ask the underlying "git fetch" to go over IPv4/IPv6, which has been
273276 corrected.
274- (merge ffb4568afe sw/pull-ipv46-passthru later to maint).
277+
278+ * "git checkout --recursive" may overwrite and rewind the history of
279+ the branch that happens to be checked out in submodule
280+ repositories, which might not be desirable. Detach the HEAD but
281+ still allow the recursive checkout to succeed in such a case.
282+ (merge 57f22bf997 sb/submodule-recursive-checkout-detach-head later to maint).
283+
284+ * "git branch --set-upstream" has been deprecated and (sort of)
285+ removed, as "--set-upstream-to" is the preferred one these days.
286+ The documentation still had "--set-upstream" listed on its
287+ synopsys section, which has been corrected.
288+ (merge a060f3d3d8 tz/branch-doc-remove-set-upstream later to maint).
289+
290+ * Internaly we use 0{40} as a placeholder object name to signal the
291+ codepath that there is no such object (e.g. the fast-forward check
292+ while "git fetch" stores a new remote-tracking ref says "we know
293+ there is no 'old' thing pointed at by the ref, as we are creating
294+ it anew" by passing 0{40} for the 'old' side), and expect that a
295+ codepath to locate an in-core object to return NULL as a sign that
296+ the object does not exist. A look-up for an object that does not
297+ exist however is quite costly with a repository with large number
298+ of packfiles. This access pattern has been optimized.
299+ (merge 87b5e236a1 jk/fewer-pack-rescan later to maint).
300+
301+ * In addition to "git stash -m message", the command learned to
302+ accept "git stash -mmessage" form.
303+ (merge 5675473fcb ph/stash-save-m-option-fix later to maint).
275304
276305 * Other minor doc, test and build updates and code cleanups.
277- (merge c5e3bc6ec4 sd/branch-copy later to maint).
306+ (merge 1a1fc2d5b5 rd/man-prune-progress later to maint).
307+ (merge 0ba014035a rd/man-reflog-add-n later to maint).
308+ (merge e54b63359f rd/doc-notes-prune-fix later to maint).
309+ (merge ff4c9b413a sp/doc-info-attributes later to maint).
0 commit comments