Git v1.7.5 Release Notes (draft) ======================== Updates since v1.7.4 -------------------- * Various MinGW portability fixes. * Various git-p4 enhancements (in contrib). * Various vcs-svn enhancements. * Update to more modern HP-UX port. * The codebase is getting prepared for i18n/l10n; no translated/translatable strings in the code yet. * "git apply -v" reports offset lines when the patch does not apply at the exact location recorded in the diff output. * "git branch --track" (and "git checkout --track --branch") used to allow setting up a random non-branch that does not make sense to follow as the "upstream". The command correctly diagnoses it as an error. * "git config" used to be also known as "git repo-config", but the old name is now officially deprecated. * "git checkout --detach " is a more user friendly synonym for "git checkout ^0". * "git checkout" performed on detached HEAD gives a warning and advice when the commit being left behind will become unreachable from any branch or tag. * "git cherry-pick" and "git revert" can be told to use a custom merge strategy, similar to "git rebase". * "git cherry-pick" remembers which commit failed to apply when it is stopped by conflicts, making it unnecessary to use "commit -c $commit" to conclude it. * "git cvsimport" bails out immediately when the cvs server cannot be reached, without spewing unnecessary error messages that complain about the server response it never got. * "git grep -f " learned to treat "-" as "read from the standard input stream". * "git grep --no-index" did not honor pathspecs correctly, returning paths outside the specified area. * "git log" type commands now understand globbing pathspecs. You can say "git log -- '*.txt'" for example. * "git mergetool" learned how to drive "beyond compare 3" as well. * "git rerere forget" without pathspec used to forget all the saved conflicts that relate to the current merge; it now requires you to give it pathspecs. * "git rev-list --objects $revs -- $pathspec" now limits the objects listed in its output properly with the pathspec, in preparation for narrow clones. * "git push" with no parameters gives better advice messages when "tracking" is used as the push.default semantics or there is no remote configured yet. * "git rerere" learned a new subcommand "remaining" that is similar to "status" and lists the paths that had conflicts which are known to rerere, but excludes the paths that have already been marked as resolved in the index from its output. "git mergetool" has been updated to use this facility. * A possible value to the "push.default" configuration variable, 'tracking', gained a synonym that more naturally describes what it does, 'upstream'. Also contains various documentation updates. Fixes since v1.7.4 ------------------ All of the fixes in the v1.7.4.X maintenance series are included in this release, unless otherwise noted. * "git apply" used to confuse lines updated by previous hunks as lines that existed before when applying a hunk, contributing misapplication of patches with offsets. * "git checkout $other_branch" silently removed untracked symbolic links in the working tree that are in the way in order to check out paths under it from the named branch (js/checkout-untracked-symlink). --- exec >/var/tmp/1 O=v1.7.4.1-352-gcdc3466 echo O=$(git describe 'master') git shortlog --no-merges ^maint ^$O master