Git v2.6.2 Release Notes ======================== Fixes since v2.6.1 ------------------ * There were some classes of errors that "git fsck" diagnosed to its standard error that did not cause it to exit with non-zero status. * A test script for the HTTP service had a timing dependent bug, which was fixed. * Performance-measurement tests did not work without an installed Git. * On a case insensitive filesystems, setting GIT_WORK_TREE variable using a random cases that does not agree with what the filesystem thinks confused Git that it wasn't inside the working tree. * When "git am" was rewritten as a built-in, it stopped paying attention to user.signingkey, which was fixed. * After "git checkout --detach", "git status" reported a fairly useless "HEAD detached at HEAD", instead of saying at which exact commit. * "git rebase -i" had a minor regression recently, which stopped considering a line that begins with an indented '#' in its insn sheet not a comment, which is now fixed. * Description of the "log.follow" configuration variable in "git log" documentation is now also copied to "git config" documentation. * Allocation related functions and stdio are unsafe things to call inside a signal handler, and indeed killing the pager can cause glibc to deadlock waiting on allocation mutex as our signal handler tries to free() some data structures in wait_for_pager(). Reduce these unsafe calls. * The way how --ref/--notes to specify the notes tree reference are DWIMmed was not clearly documented. * Customization to change the behaviour with "make -w" and "make -s" in our Makefile was broken when they were used together. * The Makefile always runs the library archiver with hardcoded "crs" options, which was inconvenient for exotic platforms on which people want to use programs with totally different set of command line options. * The ssh transport, just like any other transport over the network, did not clear GIT_* environment variables, but it is possible to use SendEnv and AcceptEnv to leak them to the remote invocation of Git, which is not a good idea at all. Explicitly clear them just like we do for the local transport. * "git blame --first-parent v1.0..v2.0" was not rejected but did not limit the blame to commits on the first parent chain. * Very small number of options take a parameter that is optional (which is not a great UI element as they can only appear at the end of the command line). Add notice to documentation of each and every one of them. Also contains typofixes, documentation updates and trivial code clean-ups.