Git v1.8.5.5

The latest maintenance release Git v1.8.5.5 is now available at
the usual places. Hopefully this will be the last update to the
1.8.5.x series.

The release tarballs are found at:

and their SHA-1 checksums are:

7bb4ea883b1f8f6f7f927035f85e8e27b57e0194  git-
39dd7979c8757d2dc4bc3aaa82741ba93557d566  git-htmldocs-
a4a2aef1440d4751f37c65359da57c9bd51a7beb  git-manpages-

The following public repositories all have a copy of the v1.8.5.5
tag and the maint branch that the tag points at:

url =
url = git://
url =
url = git://
url = git://
url =

Also, has copies of the
release tarballs.

Git v1.8.5.5 Release Notes

Fixes since v1.8.5.4

  • The pathspec matching code, while comparing two trees (e.g. “git
    diff A B — path1 path2”) was too aggressive and failed to match
    some paths when multiple pathspecs were involved.

  • “git repack –max-pack-size=8g” stopped being parsed correctly when
    the command was reimplemented in C.

  • A recent update to “git send-email” broke platforms where
    /etc/ssl/certs/ directory exists but cannot be used as SSL_ca_path
    (e.g. Fedora rawhide).

  • A handful of bugs around interpreting $branch@{upstream} notation
    and its lookalike, when $branch part has interesting characters,
    e.g. “@”, and “:”, have been fixed.

  • “git clone” would fail to clone from a repository that has a ref
    directly under “refs/”, e.g. “refs/stash”, because different
    validation paths do different things on such a refname. Loosen the
    client side’s validation to allow such a ref.

  • “git log –left-right A…B” lost the “leftness” of commits
    reachable from A when A is a tag as a side effect of a recent
    bugfix. This is a regression in 1.8.4.x series.

  • “git merge-base –octopus” used to leave cleaning up suboptimal
    result to the caller, but now it does the clean-up itself.

  • “git mv A B/”, when B does not exist as a directory, should error
    out, but it didn’t.

Also contains typofixes, documentation updates and trivial code clean-ups.

Changes since v1.8.5.4 are as follows:

Andy Spencer (1):
      tree_entry_interesting: match against all pathspecs

Jeff King (9):
      fetch-pack: do not filter out one-level refs
      interpret_branch_name: factor out upstream handling
      interpret_branch_name: rename "cp" variable to "at"
      interpret_branch_name: always respect "namelen" parameter
      interpret_branch_name: avoid @{upstream} past colon
      interpret_branch_name: find all possible @-marks
      repack: fix typo in max-pack-size option
      repack: make parsed string options const-correct
      repack: propagate pack-objects options as strings

Junio C Hamano (5):
      merge-base: separate "--independent" codepath into its own helper
      merge-base --octopus: reduce the result from get_octopus_merge_bases()
      revision: mark contents of an uninteresting tree uninteresting
      revision: propagate flag bits from tags to pointees

Ruben Kerkhof (1):
      send-email: /etc/ssl/certs/ directory may not be usable as ca_path

Junio C Hamano wrote on 13 Feb 2014