1Git v1.7.7.1 Release Notes 2========================== 3 4Fixes since v1.7.7 5------------------ 6 7 * On some BSD systems, adding +s bit on directories is detrimental 8 (it is not necessary on BSD to begin with). "git init --shared" 9 has been updated to take this into account without extra makefile 10 settings on platforms the Makefile knows about. 11 12 * After incorrectly written third-party tools store a tag object in 13 HEAD, git diagnosed it as a repository corruption and refused to 14 proceed in order to avoid spreading the damage. We now gracefully 15 recover from such a situation by pretending as if the commit that 16 is pointed at by the tag were in HEAD. 17 18 * "git apply --whitespace=error" did not bother to report the exact 19 line number in the patch that introduced new blank lines at the end 20 of the file. 21 22 * "git apply --index" did not check corrupted patch. 23 24 * "git checkout $tree $directory/" resurrected paths locally removed or 25 modified only in the working tree in $directory/ that did not appear 26 in $directory of the given $tree. They should have been kept intact. 27 28 * "git diff $tree $path" used to apply the pathspec at the output stage, 29 reading the whole tree, wasting resources. 30 31 * The code to check for updated submodules during a "git fetch" of the 32 superproject had an unnecessary quadratic loop. 33 34 * "git fetch" from a large bundle did not enable the progress output. 35 36 * When "git fsck --lost-and-found" found that an empty blob object in the 37 object store is unreachable, it incorrectly reported an error after 38 writing the lost blob out successfully. 39 40 * "git filter-branch" did not refresh the index before checking that the 41 working tree was clean. 42 43 * "git grep $tree" when run with multiple threads had an unsafe access to 44 the object database that should have been protected with mutex. 45 46 * The "--ancestry-path" option to "git log" and friends misbehaved in a 47 history with complex criss-cross merges and showed an uninteresting 48 side history as well. 49 50 * Test t1304 assumed LOGNAME is always set, which may not be true on 51 some systems. 52 53 * Tests with --valgrind failed to find "mergetool" scriptlets. 54 55 * "git patch-id" miscomputed the patch-id in a patch that has a line longer 56 than 1kB. 57 58 * When an "exec" insn failed after modifying the index and/or the working 59 tree during "rebase -i", we now check and warn that the changes need to 60 be cleaned up.