Some highlights:
- When "git am" is fed an input that has multiple "Content-type: ..." header, it did not grok charset= attribute correctly.
- Even during a conflicted merge, "git blame $path" always meant to blame uncommitted changes to the "working tree" version; make it more useful by showing cleanly merged parts as coming from the other branch that is being merged.
- "git blame MAKEFILE" run in a history that has "Makefile" but not "MAKEFILE" should say "No such file MAKEFILE in HEAD", but got confused on a case insensitive filesystem and failed to do so.
- "git fetch --all", when passed "--no-tags", did not honor the "--no-tags" option while fetching from individual remotes (the same issue existed with "--tags", but combination "--all --tags" makes much less sense than "--all --no-tags").
- "git log/diff/format-patch --stat" showed the "N line(s) added" comment in user's locale and caused careless submitters to send patches with such a line in them to projects whose project language is not their language, mildly irritating others. Localization to the line has been disabled for now.
- "git log --all-match --grep=A --grep=B" ought to show commits that mention both A and B, but when these three options are used with --author or --committer, it showed commits that mention either A or B (or both) instead.
- The subcommand to remove the definition of a remote in "git remote" was named "rm" even though all other subcommands were spelled out. Introduce "git remote remove" to remove confusion, and keep "rm" as a backward compatible synonym.
Upgrade and enjoy.