Merge branch 'maint'
[git] / Documentation / RelNotes / 1.7.7.txt
1 Git v1.7.7 Release Notes
2 ========================
3
4 Updates since v1.7.6
5 --------------------
6
7  * The scripting part of the codebase is getting prepared for i18n/l10n.
8
9  * Interix, Cygwin and Minix ports got updated.
10
11  * A handful of patches to update git-p4 (in contrib/).
12
13  * Gitweb learned to read from /etc/gitweb-common.conf when it exists,
14    before reading from gitweb_config.perl or from /etc/gitweb.conf
15    (this last one is read only when per-repository gitweb_config.perl
16    does not exist).
17
18  * Various codepaths that invoked zlib deflate/inflate assumed that these
19    functions can compress or uncompress more than 4GB data in one call on
20    platforms with 64-bit long, which has been corrected.
21
22  * "git archive" can be told to pass the output to gzip compression and
23    produce "archive.tar.gz".
24
25  * "git bisect" can be used in a bare repository (provided if the test
26    you perform per each iteration does not need a working tree, of
27    course).
28
29  * "git check-attr" can take relative paths from the command line.
30
31  * "git check-attr" learned "--all" option to list the attributes for a
32    given path.
33
34  * "git checkout" (both the code to update the files upon checking out a
35    different branch, the code to checkout specific set of files) learned
36    to stream the data from object store when possible, without having to
37    read the entire contents of a file in memory first. An earlier round
38    of this code that is not in any released version had a large leak but
39    now it has been plugged.
40
41  * "git clone" can now take "--config key=value" option to set the
42    repository configuration options that affect the initial checkout.
43
44  * "git commit <paths>..." now lets you feed relative pathspecs that
45    refer outside your current subdirectory.
46
47  * "git diff --stat" learned --stat-count option to limit the output of
48    diffstat report.
49
50  * "git diff" learned "--histogram" option, to use a different diff
51    generation machinery stolen from jgit, which might give better
52    performance.
53
54  * "git fetch", "git push" and friends no longer show connection
55    errors for addresses that couldn't be connected when at least one
56    address succeeds (this is arguably a regression but a deliberate
57    one).
58
59  * "git grep" learned --break and --heading options, to let users mimic
60    output format of "ack".
61
62  * "git grep" learned "-W" option that shows wider context using the same
63    logic used by "git diff" to determine the hunk header.
64
65  * "git rebase master topci" no longer spews usage hints after giving
66    "fatal: no such branch: topci" error message.
67
68  * "git stash" learned --include-untracked option.
69
70  * "git submodule update" used to stop at the first error updating a
71    submodule; it now goes on to update other submodules that can be
72    updated, and reports the ones with errors at the end.
73
74  * "git upload-pack" and "git receive-pack" learned to pretend only a
75    subset of the refs exist in a repository. This may help a site to
76    put many tiny repositories into one repository (this would not be
77    useful for larger repositories as repacking would be problematic).
78
79  * "git verify-pack" has been rewritten to use the "index-pack" machinery
80    that is more efficient in reading objects in packfiles.
81
82  * test scripts for gitweb tried to run even when CGI-related perl modules
83    are not installed; it now exits early when they are unavailable.
84
85 Also contains various documentation updates and minor miscellaneous
86 changes.
87
88
89 Fixes since v1.7.6
90 ------------------
91
92 Unless otherwise noted, all the fixes in 1.7.6.X maintenance track are
93 included in this release.
94
95  * Error exits from $PAGER were silently ignored.
96    (merge fc1b56f cb/maint-exec-error-report later).
97
98  * "git diff -c/--cc" mishandled a deletion that resolves a conflict, and
99    looked in the working tree instead.
100    (merge 9969454 jc/maint-combined-diff-work-tree later).
101
102  * "git fetch" over smart-http transport used to abort when the
103    repository was updated between the initial connection and the
104    subsequent object transfer.
105    (merge 051e400 jc/maint-smart-http-race-upload-pack later).
106
107  * "git push --quiet" was not really quiet.
108    (merge 0d086b8 cb/maint-quiet-push later).
109
110 --
111 exec >/var/tmp/1
112 echo O=$(git describe master)
113 O=v1.7.6-548-g324b6b1
114 git log --first-parent --oneline $O..master
115 echo
116 git shortlog --no-merges ^maint ^$O master