@@ -47,6 +47,35 @@ UI, Workflows & Features
4747 exists, and neither --[no-]rebase nor --ff-only is given (which
4848 would result a merge).
4949
50+ * "git p4" learned four new hooks and also "--no-verify" option to
51+ bypass them (and the existing "p4-pre-submit" hook).
52+
53+ * "git pull" shares many options with underlying "git fetch", but
54+ some of them were not documented and some of those that would make
55+ sense to pass down were not passed down.
56+
57+ * "git rebase" learned the "--no-gpg-sign" option to countermand
58+ commit.gpgSign the user may have.
59+
60+ * The output from "git format-patch" uses RFC 2047 encoding for
61+ non-ASCII letters on From: and Subject: headers, so that it can
62+ directly be fed to e-mail programs. A new option has been added
63+ to produce these headers in raw.
64+
65+ * "git log" learned "--show-pulls" that helps pathspec limited
66+ history views; a merge commit that takes the whole change from a
67+ side branch, which is normally omitted from the output, is shown
68+ in addition to the commits that introduce real changes.
69+
70+ * The interactive input from various codepaths are consolidated and
71+ any prompt possibly issued earlier are fflush()ed before we read.
72+
73+ * Allow "git rebase" to reapply all local commits, even if the may be
74+ already in the upstream, without checking first.
75+
76+ * The 'pack.useSparse' configuration variable now defaults to 'true',
77+ enabling an optimization that has been experimental since Git 2.21.
78+
5079
5180Performance, Internal Implementation, Development Support etc.
5281
@@ -60,6 +89,19 @@ Performance, Internal Implementation, Development Support etc.
6089 * "git stash" has kept an escape hatch to use the scripted version
6190 for a few releases, which got stale. It has been removed.
6291
92+ * Enable tests that require GnuPG on Windows.
93+
94+ * Minor test usability improvement.
95+
96+ * Trace2 enhancement to allow logging of the environment variables.
97+
98+ * Test clean-up continues.
99+
100+ * Perf-test update.
101+
102+ * A Windows-specific test element has been made more robust against
103+ misuse from both user's environment and programmer's errors.
104+
63105
64106Fixes since v2.26
65107-----------------
@@ -85,10 +127,91 @@ Fixes since v2.26
85127 was rewritten in C back in 2.20 era, which has been corrected.
86128 (merge f08132f889 at/rebase-fork-point-regression-fix later to maint).
87129
130+ * The import-tars importer (in contrib/fast-import/) used to create
131+ phony files at the top-level of the repository when the archive
132+ contains global PAX headers, which made its own logic to detect and
133+ omit the common leading directory ineffective, which has been
134+ corrected.
135+ (merge c839fcff65 js/import-tars-do-not-make-phony-files-from-pax-headers later to maint).
136+
137+ * Simplify the commit ancestry connectedness check in a partial clone
138+ repository in which "promised" objects are assumed to be obtainable
139+ lazily on-demand from promisor remote repositories.
140+ (merge 2b98478c6f jt/connectivity-check-optim-in-partial-clone later to maint).
141+
142+ * The server-end of the v2 protocol to serve "git clone" and "git
143+ fetch" was not prepared to see a delim packets at unexpected
144+ places, which led to a crash.
145+ (merge cacae4329f jk/harden-protocol-v2-delim-handling later to maint).
146+
147+ * When fed a midx that records no objects, some codepaths tried to
148+ loop from 0 through (num_objects-1), which, due to integer
149+ arithmetic wrapping around, made it nonsense operation with out of
150+ bounds array accesses. The code has been corrected to reject such
151+ an midx file.
152+ (merge 796d61cdc0 dr/midx-avoid-int-underflow later to maint).
153+
154+ * Utitiles run via the run_command() API were not spawned correctly
155+ on Cygwin, when the paths to them are given as a full path with
156+ backslashes.
157+ (merge 05ac8582bc ak/run-command-on-cygwin-fix later to maint).
158+
159+ * "git pull --rebase" tried to run a rebase even after noticing that
160+ the pull results in a fast-forward and no rebase is needed nor
161+ sensible, for the past few years due to a mistake nobody noticed.
162+ (merge fbae70ddc6 en/pull-do-not-rebase-after-fast-forwarding later to maint).
163+
164+ * "git rebase" with the merge backend did not work well when the
165+ rebase.abbreviateCommands configuration was set.
166+ (merge de9f1d3ef4 ag/rebase-merge-allow-ff-under-abbrev-command later to maint).
167+
168+ * The logic to auto-follow tags by "git clone --single-branch" was
169+ not careful to avoid lazy-fetching unnecessary tags, which has been
170+ corrected.
171+ (merge 167a575e2d jk/use-quick-lookup-in-clone-for-tag-following later to maint).
172+
173+ * "git rebase -i" did not leave the reflog entries correctly.
174+ (merge 1f6965f994 en/sequencer-reflog-action later to maint).
175+
176+ * The more aggressive updates to remote-tracking branches we had for
177+ the past 7 years or so were not reflected in the documentation,
178+ which has been corrected.
179+ (merge a44088435c pb/pull-fetch-doc later to maint).
180+
181+ * We've left the command line parsing of "git log :/a/b/" broken for
182+ about a full year without anybody noticing, which has been
183+ corrected.
184+ (merge 0220461071 jc/missing-ref-store-fix later to maint).
185+
186+ * Misc fixes for Windows.
187+ (merge 3efc128cd5 js/mingw-fixes later to maint).
188+
189+ * "git rebase" (again) learns to honor "--no-keep-empty", which lets
190+ the user to discard commits that are empty from the beginning (as
191+ opposed to the ones that become empty because of rebasing). The
192+ interactive rebase also marks commits that are empty in the todo.
193+ (merge 50ed76148a en/rebase-no-keep-empty later to maint).
194+
195+ * Parsing the host part out of URL for the credential helper has been corrected.
196+ (merge 4c5971e18a jk/credential-parsing-end-of-host-in-URL later to maint).
197+
88198 * Other code cleanup, docfix, build fix, etc.
89199 (merge 564956f358 jc/maintain-doc later to maint).
90200 (merge 7422b2a0a1 sg/commit-slab-clarify-peek later to maint).
91201 (merge 9c688735f6 rs/doc-passthru-fetch-options later to maint).
92202 (merge 757c2ba3e2 en/oidset-uninclude-hashmap later to maint).
93203 (merge 8312aa7d74 jc/config-tar later to maint).
94204 (merge d00a5bdd50 ss/submodule-foreach-cb later to maint).
205+ (merge 64d1022e14 ar/test-style-fixes later to maint).
206+ (merge 4a465443a6 ds/doc-clone-filter later to maint).
207+ (merge bb2dbe301b jk/t3419-drop-expensive-tests later to maint).
208+ (merge d3507cc712 js/test-junit-finalization-fix later to maint).
209+ (merge 2149b6748f bc/faq later to maint).
210+ (merge 12dc0879f1 jk/test-cleanup later to maint).
211+ (merge 344420bf0f pb/rebase-doc-typofix later to maint).
212+ (merge 7cd54d37dc dl/wrapper-fix-indentation later to maint).
213+ (merge 78725ebda9 jc/allow-strlen-substitution-in-shell-scripts later to maint).
214+ (merge 2ecfcdecc6 jm/gitweb-fastcgi-utf8 later to maint).
215+ (merge 0740d0a5d3 jk/oid-array-cleanups later to maint).
216+ (merge a1aba0c95c js/t0007-typofix later to maint).
217+ (merge 76ba7fa225 ma/config-doc-fix later to maint).
0 commit comments