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