|  | Git v1.8.2.1 Release Notes | 
|  | ========================== | 
|  |  | 
|  | Fixes since v1.8.2 | 
|  | ------------------ | 
|  |  | 
|  | * An earlier change to the attribute system introduced at v1.8.1.2 by | 
|  | mistake stopped a pattern "dir" (without trailing slash) from | 
|  | matching a directory "dir" (it only wanted to allow pattern "dir/" | 
|  | to also match). | 
|  |  | 
|  | * Verification of signed tags were not done correctly when not in C | 
|  | or en/US locale. | 
|  |  | 
|  | * 'git commit -m "$msg"' used to add an extra newline even when | 
|  | $msg already ended with one. | 
|  |  | 
|  | * The "--match=<pattern>" option of "git describe", when used with | 
|  | "--all" to allow refs that are not annotated tags to be used as a | 
|  | base of description, did not restrict the output from the command | 
|  | to those that match the given pattern. | 
|  |  | 
|  | * An aliased command spawned from a bare repository that does not say | 
|  | it is bare with "core.bare = yes" is treated as non-bare by mistake. | 
|  |  | 
|  | * When "format-patch" quoted a non-ascii strings on the header files, | 
|  | it incorrectly applied rfc2047 and chopped a single character in | 
|  | the middle of it. | 
|  |  | 
|  | * "git archive" reports a failure when asked to create an archive out | 
|  | of an empty tree.  It would be more intuitive to give an empty | 
|  | archive back in such a case. | 
|  |  | 
|  | * "git tag -f <tag>" always said "Updated tag '<tag>'" even when | 
|  | creating a new tag (i.e. not overwriting nor updating). | 
|  |  | 
|  | * "git cmd -- ':(top'" was not diagnosed as an invalid syntax, and | 
|  | instead the parser kept reading beyond the end of the string. | 
|  |  | 
|  | * Annotated tags outside refs/tags/ hierarchy were not advertised | 
|  | correctly to the ls-remote and fetch with recent version of Git. | 
|  |  | 
|  | * The code to keep track of what directory names are known to Git on | 
|  | platforms with case insensitive filesystems can get confused upon a | 
|  | hash collision between these pathnames and looped forever. | 
|  |  | 
|  | * The logic used by "git diff -M --stat" to shorten the names of | 
|  | files before and after a rename did not work correctly when the | 
|  | common prefix and suffix between the two filenames overlapped. | 
|  |  | 
|  | * "git submodule update", when recursed into sub-submodules, did not | 
|  | accumulate the prefix paths. | 
|  |  | 
|  | * "git am $maildir/" applied messages in an unexpected order; sort | 
|  | filenames read from the maildir/ in a way that is more likely to | 
|  | sort messages in the order the writing MUA meant to, by sorting | 
|  | numeric segment in numeric order and non-numeric segment in | 
|  | alphabetical order. | 
|  |  | 
|  | * When export-subst is used, "zip" output recorded incorrect | 
|  | size of the file. | 
|  |  | 
|  | * Some platforms and users spell UTF-8 differently; retry with the | 
|  | most official "UTF-8" when the system does not understand the | 
|  | user-supplied encoding name that are the common alternative | 
|  | spellings of UTF-8. | 
|  |  | 
|  | * "git branch" did not bother to check nonsense command line | 
|  | parameters and issue errors in many cases. | 
|  |  | 
|  | * "git update-index -h" did not do the usual "-h(elp)" thing. | 
|  |  | 
|  | * perl/Git.pm::cat_blob slurped everything in core only to write it | 
|  | out to a file descriptor, which was not a very smart thing to do. | 
|  |  | 
|  | * The SSL peer verification done by "git imap-send" did not ask for | 
|  | Server Name Indication (RFC 4366), failing to connect SSL/TLS | 
|  | sites that serve multiple hostnames on a single IP. | 
|  |  | 
|  | * "git index-pack" had a buffer-overflow while preparing an | 
|  | informational message when the translated version of it was too | 
|  | long. | 
|  |  | 
|  | * Clarify in the documentation "what" gets pushed to "where" when the | 
|  | command line to "git push" does not say these explicitly. | 
|  |  | 
|  | * In "git reflog expire", REACHABLE bit was not cleared from the | 
|  | correct objects. | 
|  |  | 
|  | * The "--color=<when>" argument to the commands in the diff family | 
|  | was described poorly. | 
|  |  | 
|  | * The arguments given to pre-rebase hook were not documented. | 
|  |  | 
|  | * The v4 index format was not documented. | 
|  |  | 
|  | * The "--match=<pattern>" argument "git describe" takes uses glob | 
|  | pattern but it wasn't obvious from the documentation. | 
|  |  | 
|  | * Some sources failed to compile on systems that lack NI_MAXHOST in | 
|  | their system header (e.g. z/OS). | 
|  |  | 
|  | * Add an example use of "--env-filter" in "filter-branch" | 
|  | documentation. | 
|  |  | 
|  | * "git bundle verify" did not say "records a complete history" for a | 
|  | bundle that does not have any prerequisites. | 
|  |  | 
|  | * In the v1.8.0 era, we changed symbols that do not have to be global | 
|  | to file scope static, but a few functions in graph.c were used by | 
|  | CGit from sideways bypassing the entry points of the API the | 
|  | in-tree users use. | 
|  |  | 
|  | * "git merge-tree" had a typo in the logic to detect d/f conflicts, | 
|  | which caused it to segfault in some cases. |