7ef0d62730
Merge commit '1b593e1ea4d2af0f6444d9a7788d5d99abd6fde5' as 'third_party/git'
105 lines
4.4 KiB
Text
105 lines
4.4 KiB
Text
Git v2.14.2 Release Notes
|
|
=========================
|
|
|
|
Fixes since v2.14.1
|
|
-------------------
|
|
|
|
* Because recent Git for Windows do come with a real msgfmt, the
|
|
build procedure for git-gui has been updated to use it instead of a
|
|
hand-rolled substitute.
|
|
|
|
* "%C(color name)" in the pretty print format always produced ANSI
|
|
color escape codes, which was an early design mistake. They now
|
|
honor the configuration (e.g. "color.ui = never") and also tty-ness
|
|
of the output medium.
|
|
|
|
* The http.{sslkey,sslCert} configuration variables are to be
|
|
interpreted as a pathname that honors "~[username]/" prefix, but
|
|
weren't, which has been fixed.
|
|
|
|
* Numerous bugs in walking of reflogs via "log -g" and friends have
|
|
been fixed.
|
|
|
|
* "git commit" when seeing an totally empty message said "you did not
|
|
edit the message", which is clearly wrong. The message has been
|
|
corrected.
|
|
|
|
* When a directory is not readable, "gitweb" fails to build the
|
|
project list. Work this around by skipping such a directory.
|
|
|
|
* A recently added test for the "credential-cache" helper revealed
|
|
that EOF detection done around the time the connection to the cache
|
|
daemon is torn down were flaky. This was fixed by reacting to
|
|
ECONNRESET and behaving as if we got an EOF.
|
|
|
|
* Some versions of GnuPG fail to kill gpg-agent it auto-spawned
|
|
and such a left-over agent can interfere with a test. Work it
|
|
around by attempting to kill one before starting a new test.
|
|
|
|
* "git log --tag=no-such-tag" showed log starting from HEAD, which
|
|
has been fixed---it now shows nothing.
|
|
|
|
* The "tag.pager" configuration variable was useless for those who
|
|
actually create tag objects, as it interfered with the use of an
|
|
editor. A new mechanism has been introduced for commands to enable
|
|
pager depending on what operation is being carried out to fix this,
|
|
and then "git tag -l" is made to run pager by default.
|
|
|
|
* "git push --recurse-submodules $there HEAD:$target" was not
|
|
propagated down to the submodules, but now it is.
|
|
|
|
* Commands like "git rebase" accepted the --rerere-autoupdate option
|
|
from the command line, but did not always use it. This has been
|
|
fixed.
|
|
|
|
* "git clone --recurse-submodules --quiet" did not pass the quiet
|
|
option down to submodules.
|
|
|
|
* "git am -s" has been taught that some input may end with a trailer
|
|
block that is not Signed-off-by: and it should refrain from adding
|
|
an extra blank line before adding a new sign-off in such a case.
|
|
|
|
* "git svn" used with "--localtime" option did not compute the tz
|
|
offset for the timestamp in question and instead always used the
|
|
current time, which has been corrected.
|
|
|
|
* Memory leaks in a few error codepaths have been plugged.
|
|
|
|
* bash 4.4 or newer gave a warning on NUL byte in command
|
|
substitution done in "git stash"; this has been squelched.
|
|
|
|
* "git grep -L" and "git grep --quiet -L" reported different exit
|
|
codes; this has been corrected.
|
|
|
|
* When handshake with a subprocess filter notices that the process
|
|
asked for an unknown capability, Git did not report what program
|
|
the offending subprocess was running. This has been corrected.
|
|
|
|
* "git apply" that is used as a better "patch -p1" failed to apply a
|
|
taken from a file with CRLF line endings to a file with CRLF line
|
|
endings. The root cause was because it misused convert_to_git()
|
|
that tried to do "safe-crlf" processing by looking at the index
|
|
entry at the same path, which is a nonsense---in that mode, "apply"
|
|
is not working on the data in (or derived from) the index at all.
|
|
This has been fixed.
|
|
|
|
* Killing "git merge --edit" before the editor returns control left
|
|
the repository in a state with MERGE_MSG but without MERGE_HEAD,
|
|
which incorrectly tells the subsequent "git commit" that there was
|
|
a squash merge in progress. This has been fixed.
|
|
|
|
* "git archive" did not work well with pathspecs and the
|
|
export-ignore attribute.
|
|
|
|
* "git cvsserver" no longer is invoked by "git daemon" by default,
|
|
as it is old and largely unmaintained.
|
|
|
|
* Various Perl scripts did not use safe_pipe_capture() instead of
|
|
backticks, leaving them susceptible to end-user input. They have
|
|
been corrected.
|
|
|
|
Also contains various documentation updates and code clean-ups.
|
|
|
|
Credits go to joernchen <joernchen@phenoelit.de> for finding the
|
|
unsafe constructs in "git cvsserver", and to Jeff King at GitHub for
|
|
finding and fixing instances of the same issue in other scripts.
|