70 lines
3 KiB
Text
70 lines
3 KiB
Text
|
Git v2.8.4 Release Notes
|
||
|
========================
|
||
|
|
||
|
Fixes since v2.8.3
|
||
|
------------------
|
||
|
|
||
|
* Documentation for "git merge --verify-signatures" has been updated
|
||
|
to clarify that the signature of only the commit at the tip is
|
||
|
verified. Also the phrasing used for signature and key validity is
|
||
|
adjusted to align with that used by OpenPGP.
|
||
|
|
||
|
* On Windows, .git and optionally any files whose name starts with a
|
||
|
dot are now marked as hidden, with a core.hideDotFiles knob to
|
||
|
customize this behaviour.
|
||
|
|
||
|
* Portability enhancement for "rebase -i" to help platforms whose
|
||
|
shell does not like "for i in <empty>" (which is not POSIX-kosher).
|
||
|
|
||
|
* "git fsck" learned to catch NUL byte in a commit object as
|
||
|
potential error and warn.
|
||
|
|
||
|
* CI test was taught to build documentation pages.
|
||
|
|
||
|
* Many 'linkgit:<git documentation page>' references were broken,
|
||
|
which are all fixed with this.
|
||
|
|
||
|
* "git describe --contains" often made a hard-to-justify choice of
|
||
|
tag to give name to a given commit, because it tried to come up
|
||
|
with a name with smallest number of hops from a tag, causing an old
|
||
|
commit whose close descendant that is recently tagged were not
|
||
|
described with respect to an old tag but with a newer tag. It did
|
||
|
not help that its computation of "hop" count was further tweaked to
|
||
|
penalize being on a side branch of a merge. The logic has been
|
||
|
updated to favor using the tag with the oldest tagger date, which
|
||
|
is a lot easier to explain to the end users: "We describe a commit
|
||
|
in terms of the (chronologically) oldest tag that contains the
|
||
|
commit."
|
||
|
|
||
|
* Running tests with '-x' option to trace the individual command
|
||
|
executions is a useful way to debug test scripts, but some tests
|
||
|
that capture the standard error stream and check what the command
|
||
|
said can be broken with the trace output mixed in. When running
|
||
|
our tests under "bash", however, we can redirect the trace output
|
||
|
to another file descriptor to keep the standard error of programs
|
||
|
being tested intact.
|
||
|
|
||
|
* "http.cookieFile" configuration variable clearly wants a pathname,
|
||
|
but we forgot to treat it as such by e.g. applying tilde expansion.
|
||
|
|
||
|
* When de-initialising all submodules, "git submodule deinit" gave a
|
||
|
faulty recommendation to use "git submodule deinit .", which would
|
||
|
result in a strange error message in a pathological corner case.
|
||
|
This has been corrected to suggest "submodule deinit --all" instead.
|
||
|
|
||
|
* Many commands normalize command line arguments from NFD to NFC
|
||
|
variant of UTF-8 on OSX, but commands in the "diff" family did
|
||
|
not, causing "git diff $path" to complain that no such path is
|
||
|
known to Git. They have been taught to do the normalization.
|
||
|
|
||
|
* A couple of bugs around core.autocrlf have been fixed.
|
||
|
|
||
|
* "git difftool" learned to handle unmerged paths correctly in
|
||
|
dir-diff mode.
|
||
|
|
||
|
* The "are we talking with TTY, doing an interactive session?"
|
||
|
detection has been updated to work better for "Git for Windows".
|
||
|
|
||
|
|
||
|
Also contains other minor documentation updates and code clean-ups.
|