Reviewing the draft release notes, I see that there aren't many earth-shattering new features, but there are quite a few niceties around the fringes. To name a few at random:
- Command line completion (in contrib/completion) has learned what can be "git add"ed and what are irrelevant. You would not want "git add hello.<TAB>" to offer choices between hello.c and hello.h when you only have changes in hello.c and hello.h is unmodified.
- The patterns used in .gitignore and .gitattributes files can have double-asterisk /**/ to match 0 or more levels of directories.
- In the documentation, we consistently refer to Git the software as "Git", not "git" or "GIT" (the last one was a poor-man's attempt for imitating "Git" rendered in SMALL CAPS).
- "git branch" used to accept nonsense parameters from the command line and silently ignored them (e.g. "git branch -m A B C"). Such an erroneous input is checked more carefully.
- "git log" and friends can be told to use the same mailmap mechanism used by "git shortlog" to canonicalize the user names.
- "git log --grep=<pattern>" first converts the log messages to i18n.logoutputencoding before matching them against the pattern.
For notable backward compatibility issues (read: there is none yet ;-), please refer to the earlier article on 1.8.2-rc2.