1Git v1.9.1 Release Notes 2======================== 3 4Fixes since v1.9.0 5------------------ 6 7 * "git clean -d pathspec" did not use the given pathspec correctly 8 and ended up cleaning too much. 9 10 * "git difftool" misbehaved when the repository is bound to the 11 working tree with the ".git file" mechanism, where a textual file 12 ".git" tells us where it is. 13 14 * "git push" did not pay attention to branch.*.pushremote if it is 15 defined earlier than remote.pushdefault; the order of these two 16 variables in the configuration file should not matter, but it did 17 by mistake. 18 19 * Codepaths that parse timestamps in commit objects have been 20 tightened. 21 22 * "git diff --external-diff" incorrectly fed the submodule directory 23 in the working tree to the external diff driver when it knew it is 24 the same as one of the versions being compared. 25 26 * "git reset" needs to refresh the index when working in a working 27 tree (it can also be used to match the index to the HEAD in an 28 otherwise bare repository), but it failed to set up the working 29 tree properly, causing GIT_WORK_TREE to be ignored. 30 31 * "git check-attr" when working on a repository with a working tree 32 did not work well when the working tree was specified via the 33 --work-tree (and obviously with --git-dir) option. 34 35 * "merge-recursive" was broken in 1.7.7 era and stopped working in 36 an empty (temporary) working tree, when there are renames 37 involved. This has been corrected. 38 39 * "git rev-parse" was loose in rejecting command line arguments 40 that do not make sense, e.g. "--default" without the required 41 value for that option. 42 43 * include.path variable (or any variable that expects a path that 44 can use ~username expansion) in the configuration file is not a 45 boolean, but the code failed to check it. 46 47 * "git diff --quiet -- pathspec1 pathspec2" sometimes did not return 48 correct status value. 49 50 * Attempting to deepen a shallow repository by fetching over smart 51 HTTP transport failed in the protocol exchange, when no-done 52 extension was used. The fetching side waited for the list of 53 shallow boundary commits after the sending end stopped talking to 54 it. 55 56 * Allow "git cmd path/", when the 'path' is where a submodule is 57 bound to the top-level working tree, to match 'path', despite the 58 extra and unnecessary trailing slash (such a slash is often 59 given by command line completion).