2011-02-28 21:28:20 +01:00
|
|
|
Git v1.7.5 Release Notes (draft)
|
|
|
|
========================
|
|
|
|
|
|
|
|
Updates since v1.7.4
|
|
|
|
--------------------
|
|
|
|
|
|
|
|
* Various MinGW portability fixes.
|
|
|
|
|
|
|
|
* Various git-p4 enhancements (in contrib).
|
|
|
|
|
2011-03-10 01:21:16 +01:00
|
|
|
* Various vcs-svn enhancements.
|
|
|
|
|
2011-03-15 23:17:54 +01:00
|
|
|
* Update to more modern HP-UX port.
|
|
|
|
|
|
|
|
* "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.
|
|
|
|
|
2011-02-28 21:28:20 +01:00
|
|
|
* "git config" used to be also known as "git repo-config", but the old
|
|
|
|
name is now officially deprecated.
|
|
|
|
|
|
|
|
* "git checkout --detach <commit>" is a more user friendly synonym for
|
|
|
|
"git checkout <commit>^0".
|
|
|
|
|
2011-03-15 23:17:54 +01:00
|
|
|
* "git checkout" performed on detached HEAD gives a warning and an
|
|
|
|
advice when the commit being left behind will become unreachable from
|
|
|
|
any branch or tag.
|
|
|
|
|
2011-02-28 21:28:20 +01:00
|
|
|
* "git cherry-pick" and "git revert" can be told to use custom merge
|
|
|
|
strategy, similar to "git rebase".
|
|
|
|
|
2011-03-10 01:21:16 +01:00
|
|
|
* "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.
|
|
|
|
|
2011-03-15 23:17:54 +01:00
|
|
|
* "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.
|
|
|
|
|
2011-03-10 01:21:16 +01:00
|
|
|
* "git grep --no-index" did not honor pathspecs correctly, returning
|
|
|
|
paths outside the specified area.
|
|
|
|
|
2011-03-15 23:17:54 +01:00
|
|
|
* "git log" family of commands now understand globbing pathspecs. You
|
|
|
|
can say "git log -- '*.txt'" for example.
|
|
|
|
|
2011-03-10 01:21:16 +01:00
|
|
|
* "git rev-list --objects $revs -- $pathspec" would limit the objects listed
|
2011-02-28 21:28:20 +01:00
|
|
|
in its output properly with the pathspec, in preparation for narrow
|
|
|
|
clones.
|
|
|
|
|
2011-03-15 23:17:54 +01:00
|
|
|
* "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.
|
2011-02-28 21:28:20 +01:00
|
|
|
|
|
|
|
* "git rerere" learned a new subcommand "remaining", that is similar to
|
|
|
|
"status" that lists the paths that had conflicts that 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.
|
|
|
|
|
2011-03-15 23:17:54 +01:00
|
|
|
* We used to keep one file descriptor open for each and every packfile
|
|
|
|
that we have a mmap window on it (read: "in use"), even when for very
|
|
|
|
tiny packfiles. We now close the file descriptor early when the entire
|
|
|
|
packfile fits inside one mmap window.
|
|
|
|
|
|
|
|
* "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.
|
|
|
|
|
2011-03-10 01:21:16 +01:00
|
|
|
* "git clone /no/such/path" did not fail correctly (jk/fail-null/clone).
|
|
|
|
|
|
|
|
* "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).
|
|
|
|
|
|
|
|
* "git diff --stat -B" ran on binary files counted the changes in lines,
|
|
|
|
which was nonsensical (jk/diffstat-binary).
|
|
|
|
|
|
|
|
* "git diff -M" opportunisticly detected copies, which was not
|
|
|
|
necessarily a good thing, especially when it is internally run by
|
|
|
|
recursive merge.
|
|
|
|
|
2011-02-28 21:28:20 +01:00
|
|
|
* "git merge" triggers prepare-commit-msg hook. Earlier, only "git
|
|
|
|
commit" to conclude an interrupted merge triggered the hook, leading to
|
|
|
|
an inconsistent overall user experience (js/maint-merge-use-prepare-commit-msg-hook).
|
|
|
|
|
2011-03-10 01:21:16 +01:00
|
|
|
* "git submodule update" used to honor --merge/--rebase option (or
|
|
|
|
corresponding configuration variables) even for a newly cloned
|
|
|
|
subprojects, which made no sense (so/submodule-no-update-first-time).
|
2011-02-28 21:28:20 +01:00
|
|
|
|
|
|
|
---
|
|
|
|
exec >/var/tmp/1
|
2011-03-15 23:17:54 +01:00
|
|
|
O=v1.7.4.1-265-gd0ef5a7
|
2011-02-28 21:28:20 +01:00
|
|
|
echo O=$(git describe 'master')
|
|
|
|
git shortlog --no-merges ^maint ^$O master
|