git/Documentation/RelNotes/1.7.10.txt

97 строки
3.5 KiB
Plaintext
Исходник Обычный вид История

Git v1.7.10 Release Notes
=========================
Updates since v1.7.9
--------------------
UI, Workflows & Features
* Improved handling of views, labels and branches in git-p4 (in contrib).
* "git am" learned to pass "-b" option to underlying "git mailinfo", so
that bracketed string other than "PATCH" at the beginning can be kept.
* "git clone" learned "--single-branch" option to limit cloning to a
single branch (surprise!).
* "git clone" learned to detach the HEAD in the resulting repository
when the source repository's HEAD does not point to a branch.
* When showing a patch while ignoring whitespace changes, the context
lines are taken from the postimage, in order to make it easier to
view the output.
* "git merge" in an interactive session learned to spawn the editor
by default to let the user edit the auto-generated merge message,
to encourage people to explain their merges better. Legacy scripts
can export MERGE_AUTOEDIT=no to retain the historical behaviour.
Performance
* During "git upload-pack" in respose to "git fetch", unnecessary calls
to parse_object() have been eliminated, to help performance in
repositories with excessive number of refs.
Internal Implementation
* Recursive call chains in "git index-pack" to deal with long delta
chains have been flattened, to reduce the stack footprint.
* Use of add_extra_ref() API is slowly getting removed, to make it
possible to cleanly restructure the overall refs API.
* The test suite supports the new "test_pause" helper function.
* t/Makefile is adjusted to prevent newer versions of GNU make from
running tests in seemingly random order.
Also contains minor documentation updates and code clean-ups.
Fixes since v1.7.9
------------------
Unless otherwise noted, all the fixes since v1.7.9 in the maintenance
releases are contained in this release (see release notes to them for
details).
* When "git push" fails to update any refs, the client side did not
report an error correctly to the end user.
(merge 5238cbf sp/smart-http-failure-to-push later to maint).
* "git push -q" was not sufficiently quiet.
(merge d336572 cb/push-quiet later to maint).
* "git log --first-parent $pathspec" did not stay on the first parent
chain and veered into side branch from which the whole change to the
specified paths came.
(merge 36ed191 jc/maint-log-first-parent-pathspec later to maint).
* Subprocesses spawned from various git programs were often left running
to completion even when the top-level process was killed.
(merge 10c6cdd cb/maint-kill-subprocess-upon-signal later to maint).
* "git mergetool" now gives an empty file as the common base version
to the backend when dealing with the "both sides added, differently"
case.
(merge ec245ba da/maint-mergetool-twoway later to maint).
* "git submodule add $path" forgot to recompute the name to be stored
in .gitmodules when the submodule at $path was once added to the
superproject and already initialized.
(merge 1017c1a jl/submodule-re-add later to maint).
* Using "git grep -l/-L" together with options -W or --break may not
make much sense as the output is to only count the number of hits
and there is no place for file breaks, but the latter options made
"-l/-L" to miscount the hits.
(merge 50dd0f2 tr/grep-l-with-decoration later to maint).
---
exec >/var/tmp/1
O=v1.7.9-110-g873ce7c
echo O=$(git describe)
git log --first-parent --oneline ^maint $O..
echo
git shortlog --no-merges ^maint $O..