summaryrefslogtreecommitdiff
path: root/Documentation/RelNotes/1.7.10.txt
blob: 48950d5afbca6e8e23b501163467e2f74a700f52 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
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).

 * Updated command line arguments completion script for zsh (in contrib).

 * "vcs-svn"/"svn-fe" learned to read dumps with svn-deltas and
   support incremental imports.

 * "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.

 * The commands in the "git diff" family and "git apply --stat" that
   count the number of files changed and the number of lines
   inserted/deleted have been updated to match the output from
   "diffstat".  This also opens the door to i18n this line.

 * 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 grep" pays attention to -diff (hence -binary) attributes now.

 * "git tag --list" can be given "--points-at <object>" to limit its
   output to those that point at the given object.

 * "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.
   Both "git merge" and "git pull" can be given --no-edit from the
   command line to accept the auto-generated merge message.

 * "gitweb" allows intermediate entries in the directory hierarchy
   that leads to a projects to be clicked, which in turn shows the
   list of projects inside that directory.

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 (please report possible regressions)

 * 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 now gone, to make it possible to
   cleanly restructure the overall refs API.

 * The command line parser of "git pack-objects" now uses parse-options
   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 you have both .../foo and .../foo.git, "git clone .../foo" did not
   favor the former but the latter.
   (merge b3256eb jk/git-dir-lookup later to maint).

 * Some systems need to explicitly link -lcharset to get locale_charset().
   (merge b522528 dp/i18n-libcharset later to maint).

 * The output from "git diff --stat" for two paths that have the same
   amount of changes showed graph bars of different length due to the
   way we handled rounding errors.
   (merge 2eeeef2 jc/diff-stat-scaler later to maint).

 * We failed to give the true terminal width to any subcommand when
   they are invoked with the pager, i.e. "git -p cmd".
   (merge ad6c373 zj/term-columns later to maint).

 * The transport programs ignored --no-progress and showed progress when
   sending their output to a terminal.
   (merge 01fdc21 cb/transfer-no-progress later to maint).

 * Sometimes error status detected by a check in an earlier phase of
   receive-pack (the other end of 'git push') was lost by later
   checks, resulting in false indication of success.
   (merge ef7e93d cb/receive-pack-keep-errors later to maint).

 * t5541 ignored user-supplied port number used for HTTP server testing
   (merge d202a51 cb/maint-t5541-make-server-port-portable later to maint).

 * "rev-list --verify" sometimes skipped verification depending on the
   phase of the moon, which dates back to 1.7.8.x series.
   (merge cb8da70 cb/maint-rev-list-verify-object later to maint).

---
exec >/var/tmp/1
O=v1.7.9.1-264-g76bdcf0
echo O=$(git describe)
git log --first-parent --oneline ^maint $O..
echo
git shortlog --no-merges ^maint $O..