Git v2.8.2 Release Notes ======================== Fixes since v2.8.1 ------------------ * The embedded args argv-array in the child process is used to build the command line to run pack-objects instead of using a separate array of strings. * Bunch of tests on "git clone" has been renumbered for better organization. * The tests that involve running httpd leaked the system-wide configuration in /etc/gitconfig to the tested environment. * "index-pack --keep=" was broken since v2.1.0 timeframe. * "git config --get-urlmatch", unlike other variants of the "git config --get" family, did not signal error with its exit status when there was no matching configuration. * The "--local-env-vars" and "--resolve-git-dir" options of "git rev-parse" failed to work outside a repository when the command's option parsing was rewritten in 1.8.5 era. * Fetching of history by naming a commit object name directly didn't work across remote-curl transport. * A small memory leak in an error codepath has been plugged in xdiff code. * strbuf_getwholeline() did not NUL-terminate the buffer on certain corner cases in its error codepath. * The startup_info data, which records if we are working inside a repository (among other things), are now uniformly available to Git subcommand implementations, and Git avoids attempting to touch references when we are not in a repository. * "git mergetool" did not work well with conflicts that both sides deleted. * "git send-email" had trouble parsing alias file in mailrc format when lines in it had trailing whitespaces on them. * When "git merge --squash" stopped due to conflict, the concluding "git commit" failed to read in the SQUASH_MSG that shows the log messages from all the squashed commits. * "git merge FETCH_HEAD" dereferenced NULL pointer when merging nothing into an unborn history (which is arguably unusual usage, which perhaps was the reason why nobody noticed it). * Build updates for MSVC. * "git diff -M" used to work better when two originally identical files A and B got renamed to X/A and X/B by pairing A to X/A and B to X/B, but this was broken in the 2.0 timeframe. * "git send-pack --all " was broken when its command line option parsing was written in the 2.6 timeframe. * When running "git blame $path" with unnormalized data in the index for the path, the data in the working tree was blamed, even though "git add" would not have changed what is already in the index, due to "safe crlf" that disables the line-end conversion. It has been corrected. Also contains minor documentation updates and code clean-ups.