The latest maintenance release Git v1.9.1 is now available at
the usual places.
The release tarballs are found at:
The following public repositories all have a copy of the v1.9.1
tag and the maint branch that the tag points at:
url = https://kernel.googlesource.com/pub/scm/git/git url = git://repo.or.cz/alt-git.git url = https://code.google.com/p/git-core/ url = git://git.sourceforge.jp/gitroot/git-core/git.git url = git://git-core.git.sourceforge.net/gitroot/git-core/git-core url = https://github.com/gitster/git
Git v1.9.1 Release Notes
Fixes since v1.9.0
“git clean -d pathspec” did not use the given pathspec correctly
and ended up cleaning too much.
“git difftool” misbehaved when the repository is bound to the
working tree with the “.git file” mechanism, where a textual file
“.git” tells us where it is.
“git push” did not pay attention to branch.*.pushremote if it is
defined earlier than remote.pushdefault; the order of these two
variables in the configuration file should not matter, but it did
Codepaths that parse timestamps in commit objects have been
“git diff –external-diff” incorrectly fed the submodule directory
in the working tree to the external diff driver when it knew it is
the same as one of the versions being compared.
“git reset” needs to refresh the index when working in a working
tree (it can also be used to match the index to the HEAD in an
otherwise bare repository), but it failed to set up the working
tree properly, causing GIT_WORK_TREE to be ignored.
“git check-attr” when working on a repository with a working tree
did not work well when the working tree was specified via the
–work-tree (and obviously with –git-dir) option.
“merge-recursive” was broken in 1.7.7 era and stopped working in
an empty (temporary) working tree, when there are renames
involved. This has been corrected.
“git rev-parse” was loose in rejecting command line arguments
that do not make sense, e.g. “–default” without the required
value for that option.
include.path variable (or any variable that expects a path that
can use \~username expansion) in the configuration file is not a
boolean, but the code failed to check it.
“git diff –quiet — pathspec1 pathspec2” sometimes did not return
correct status value.
Attempting to deepen a shallow repository by fetching over smart
HTTP transport failed in the protocol exchange, when no-done
extension was used. The fetching side waited for the list of
shallow boundary commits after the sending end stopped talking to
Allow “git cmd path/”, when the path is where a submodule is
bound to the top-level working tree, to match path, despite the
extra and unnecessary trailing slash (such a slash is often
given by command line completion).
Changes since v1.9.0 are as follows:
Brad King (4): t3030-merge-recursive: test known breakage with empty work tree read-cache.c: refactor --ignore-missing implementation read-cache.c: extend make_cache_entry refresh flag with options merge-recursive.c: tolerate missing files while refreshing index David Aguilar (1): difftool: support repositories with .git-files David Sharp (1): rev-parse: check i before using argv[i] against argc Jeff King (12): expand_user_path: do not look at NULL path handle_path_include: don't look at NULL value tests: auto-set LIB_HTTPD_PORT from test name t4212: test bogus timestamps with git-log fsck: report integer overflow in author timestamps date: check date overflow against time_t log: handle integer overflow in timestamps log: do not segfault on gmtime errors remote: handle pushremote config in any order show_ident_date: fix tz range check clean: respect pathspecs with "-d" clean: simplify dir/not-dir logic Junio C Hamano (4): t0003: do not chdir the whole test process check-attr: move to the top of working tree when in non-bare repository t7800: add a difftool test for .git-files Git 1.9.1 Nguyễn Thái Ngọc Duy (17): test: rename http fetch and push test files pack-protocol.txt: clarify 'obj-id' in the last ACK after 'done' protocol-capabilities.txt: refer multi_ack_detailed back to pack-protocol.txt protocol-capabilities.txt: document no-done fetch-pack: fix deepen shallow over smart http with no-done cap t5537: move http tests out to t5539 reset: optionally setup worktree and refresh index on --mixed pathspec: convert some match_pathspec_depth() to ce_path_match() pathspec: convert some match_pathspec_depth() to dir_path_match() pathspec: rename match_pathspec_depth() to match_pathspec() dir.c: prepare match_pathspec_item for taking more flags match_pathspec: match pathspec "foo/" against directory "foo" pathspec: pass directory indicator to match_pathspec_item() clean: replace match_pathspec() with dir_path_match() clean: use cache_name_is_other() diff.c: move diffcore_skip_stat_unmatch core logic out for reuse later diff: do not quit early on stat-dirty files Sandy Carter (1): i18n: proposed command missing leading dash Thomas Rast (1): diff: do not reuse_worktree_file for submodules
Junio C Hamano wrote on 18 Mar 2014