* Building on older MacOS X systems automatically sets
the necessary NO_APPLE_COMMON_CRYPTO build-time option.
+ * The support to build with NO_PTHREADS has been resurrected.
+
+ * Compilation options has been updated a bit to support z/OS port
+ better.
+
UI, Workflows & Features
to replace blob contents, names of people and paths and log
messages with bland and simple strings to help them.
+ * "git difftool" learned an option to stop feeding paths to the
+ diff backend when it exits with a non-zero status.
+
+ * "git grep" allows to paint (or not paint) partial matches on
+ context lines when showing "grep -C<num>" output in color.
+
* "log --date=iso" uses a slight variant of ISO 8601 format that is
made more human readable. A new "--date=iso-strict" option gives
datetime output that is more strictly conformant.
+ * The logic "git prune" uses is more resilient against various corner
+ cases.
+
* A broken reimplementation of Git could write an invalid index that
records both stage #0 and higher stage entries for the same path.
We now notice and reject such an index, as there is no sensible
forgot to remove higher stage entries, or if it wanted to unresolve
and forgot to remove the stage#0 entry).
+ * The temporary files "git mergetool" uses are named to avoid too
+ many dots in them (e.g. a temporary file for "hello.c" used to be
+ named e.g. "hello.BASE.4321.c" but now uses underscore instead,
+ e.g. "hello_BASE_4321.c").
+
+ * The temporary files "git mergetools" uses can be placed in a newly
+ created temporary directory, instead of the current directory, by
+ setting the mergetool.writeToTemp configuration variable.
+
+ * "git mergetool" understands "--tool bc" now, as version 4 of
+ BeyondCompare can be driven the same way as its version 3 and it
+ feels awkward to say "--tool bc3".
+
* The "pre-receive" and "post-receive" hooks are no longer required
to consume their input fully (not following this requirement used
to result in intermittent errors in "git push").
public repository really point the commits the pusher wanted to,
without having to "trust" the server.
- * "git interpret-trailers" is a new filter to programatically edit
+ * "git interpret-trailers" is a new filter to programmatically edit
the tail end of the commit log messages.
* "git help everyday" shows the "Everyday Git in 20 commands or so"
document, whose contents have been updated to more modern Git
practice.
+ * On the "git svn" front, work to reduce memory consumption and
+ to improve handling of mergeinfo progresses.
+
Performance, Internal Implementation, etc.
- * The API to manipulate the "refs" is currently undergoing a revamp
- to make it more transactional, with the eventual goal to allow
- all-or-none atomic updates and migrating the storage to something
- other than the traditional filesystem based one (e.g. databases).
+ * The API to manipulate the "refs" has been restructured to make it
+ more transactional, with the eventual goal to allow all-or-none
+ atomic updates and migrating the storage to something other than
+ the traditional filesystem based one (e.g. databases).
* The lockfile API and its users have been cleaned up.
* The scripts in the test suite can be run with "-x" option to show
a shell-trace of each command run in them.
+ * The "run-command" API learned to manage the argv and environment
+ array for child process, alleviating the need for the callers to
+ allocate and deallocate them.
+
+ * Some people use AsciiDoctor, instead of AsciiDoc, to format our
+ documentation set; the documentation has been adjusted, as
+ AsciiDoctor is pickier than AsciiDoc in its input mark-up.
+
Also contains various documentation updates and code clean-ups.
* "gitweb" used deprecated CGI::startfrom, which was removed from
CGI.pm as of 4.04; use CGI::start_from instead.
(merge 4750f4b rm/gitweb-start-form later to maint).
+
+ * Newer versions of 'meld' breaks the auto-detection we use to see if
+ they are new enough to support the `--output` option.
+ (merge b12d045 da/mergetool-meld later to maint).
+
+ * "git pack-objects" forgot to disable the codepath to generate
+ object reachability bitmap when it needs to split the resulting
+ pack.
+ (merge 2113471 jk/pack-objects-no-bitmap-when-splitting later to maint).
+
+ * The code to use cache-tree trusted the on-disk data too much and
+ fell into an infinite loop upon seeing an incorrectly recorded
+ index file.
+ (merge 729dbbd jk/cache-tree-protect-from-broken-libgit2 later to maint).
+
+ * "git fetch" into a repository where branch B was deleted earlier
+ back when it had reflog enabled, and then branch B/C is fetched
+ into it without reflog enabled, which is arguably an unlikely
+ corner case, unnecessarily failed.
+ (merge aae828b jk/fetch-reflog-df-conflict later to maint).
+
+ * "git log --first-parent -L..." used to crash.
+ (merge a8787c5 tm/line-log-first-parent later to maint).