Git 1.7.7
[git/git.git] / Documentation / RelNotes / 1.7.7.txt
CommitLineData
cf13f6ca
JH
1Git v1.7.7 Release Notes
2========================
3
4Updates since v1.7.6
5--------------------
6
7 * The scripting part of the codebase is getting prepared for i18n/l10n.
8
b9176629
JH
9 * Interix, Cygwin and Minix ports got updated.
10
3793ac56 11 * Various updates to git-p4 (in contrib/), fast-import, and git-svn.
b9176629
JH
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).
d79bcd68
JH
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
8d9185bc 22 * Git now recognizes loose objects written by other implementations that
3793ac56 23 use a non-standard window size for zlib deflation (e.g. Agit running on
8d9185bc
JH
24 Android with 4kb window). We used to reject anything that was not
25 deflated with 32kb window.
26
826603d1
JH
27 * Interaction between the use of pager and coloring of the output has
28 been improved, especially when a command that is not built-in was
29 involved.
30
3793ac56 31 * "git am" learned to pass the "--exclude=<path>" option through to underlying
cee42681
JH
32 "git apply".
33
3793ac56 34 * You can now feed many empty lines before feeding an mbox file to
cee42681
JH
35 "git am".
36
d79bcd68
JH
37 * "git archive" can be told to pass the output to gzip compression and
38 produce "archive.tar.gz".
39
3793ac56 40 * "git bisect" can be used in a bare repository (provided that the test
f85a051d
JH
41 you perform per each iteration does not need a working tree, of
42 course).
43
826603d1 44 * The length of abbreviated object names in "git branch -v" output
3793ac56 45 now honors the core.abbrev configuration variable.
826603d1 46
f85a051d
JH
47 * "git check-attr" can take relative paths from the command line.
48
3793ac56 49 * "git check-attr" learned an "--all" option to list the attributes for a
f85a051d
JH
50 given path.
51
cf13f6ca 52 * "git checkout" (both the code to update the files upon checking out a
3793ac56 53 different branch and the code to checkout a specific set of files) learned
cf13f6ca 54 to stream the data from object store when possible, without having to
3793ac56 55 read the entire contents of a file into memory first. An earlier round
b9176629
JH
56 of this code that is not in any released version had a large leak but
57 now it has been plugged.
cf13f6ca 58
3793ac56 59 * "git clone" can now take a "--config key=value" option to set the
d79bcd68 60 repository configuration options that affect the initial checkout.
cf13f6ca 61
b9176629 62 * "git commit <paths>..." now lets you feed relative pathspecs that
3793ac56 63 refer to outside your current subdirectory.
b9176629 64
3793ac56
MG
65 * "git diff --stat" learned a --stat-count option to limit the output of
66 a diffstat report.
cf13f6ca 67
3793ac56 68 * "git diff" learned a "--histogram" option to use a different diff
f85a051d
JH
69 generation machinery stolen from jgit, which might give better
70 performance.
71
3793ac56 72 * "git diff" had a weird worst case behaviour that can be triggered
e7734c6c
JH
73 when comparing files with potentially many places that could match.
74
5c2f8459 75 * "git fetch", "git push" and friends no longer show connection
3793ac56 76 errors for addresses that couldn't be connected to when at least one
5c2f8459
JH
77 address succeeds (this is arguably a regression but a deliberate
78 one).
79
3793ac56
MG
80 * "git grep" learned "--break" and "--heading" options, to let users mimic
81 the output format of "ack".
cf13f6ca 82
3793ac56 83 * "git grep" learned a "-W" option that shows wider context using the same
b9176629
JH
84 logic used by "git diff" to determine the hunk header.
85
b3212879
JH
86 * Invoking the low-level "git http-fetch" without "-a" option (which
87 git itself never did---normal users should not have to worry about
88 this) is now deprecated.
89
826603d1
JH
90 * The "--decorate" option to "git log" and its family learned to
91 highlight grafted and replaced commits.
92
d79bcd68 93 * "git rebase master topci" no longer spews usage hints after giving
3793ac56 94 the "fatal: no such branch: topci" error message.
d79bcd68 95
e7734c6c 96 * The recursive merge strategy implementation got a fairly large
3793ac56 97 fix for many corner cases that may rarely happen in real world
e7734c6c
JH
98 projects (it has been verified that none of the 16000+ merges in
99 the Linux kernel history back to v2.6.12 is affected with the
100 corner case bugs this update fixes).
101
3793ac56 102 * "git stash" learned an "--include-untracked option".
5c2f8459 103
d79bcd68
JH
104 * "git submodule update" used to stop at the first error updating a
105 submodule; it now goes on to update other submodules that can be
106 updated, and reports the ones with errors at the end.
107
3793ac56 108 * "git push" can be told with the "--recurse-submodules=check" option to
e7734c6c
JH
109 refuse pushing of the supermodule, if any of its submodules'
110 commits hasn't been pushed out to their remotes.
111
3793ac56 112 * "git upload-pack" and "git receive-pack" learned to pretend that only a
f85a051d
JH
113 subset of the refs exist in a repository. This may help a site to
114 put many tiny repositories into one repository (this would not be
115 useful for larger repositories as repacking would be problematic).
116
d79bcd68
JH
117 * "git verify-pack" has been rewritten to use the "index-pack" machinery
118 that is more efficient in reading objects in packfiles.
119
120 * test scripts for gitweb tried to run even when CGI-related perl modules
3793ac56 121 are not installed; they now exit early when the latter are unavailable.
d79bcd68 122
cf13f6ca
JH
123Also contains various documentation updates and minor miscellaneous
124changes.
125
126
127Fixes since v1.7.6
128------------------
129
3793ac56 130Unless otherwise noted, all fixes in the 1.7.6.X maintenance track are
cf13f6ca
JH
131included in this release.
132
826603d1
JH
133 * "git branch -m" and "git checkout -b" incorrectly allowed the tip
134 of the branch that is currently checked out updated.