summaryrefslogtreecommitdiff
path: root/Documentation/RelNotes/1.7.7.txt
blob: 8d0404d6f3ab169d09849a34f1607a39bc8f9054 (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
121
122
123
124
125
126
127
128
129
130
131
Git v1.7.7 Release Notes
========================

Updates since v1.7.6
--------------------

 * The scripting part of the codebase is getting prepared for i18n/l10n.

 * Interix, Cygwin and Minix ports got updated.

 * A handful of patches to update git-p4 (in contrib/).

 * Gitweb learned to read from /etc/gitweb-common.conf when it exists,
   before reading from gitweb_config.perl or from /etc/gitweb.conf
   (this last one is read only when per-repository gitweb_config.perl
   does not exist).

 * Various codepaths that invoked zlib deflate/inflate assumed that these
   functions can compress or uncompress more than 4GB data in one call on
   platforms with 64-bit long, which has been corrected.

 * "git archive" can be told to pass the output to gzip compression and
   produce "archive.tar.gz".

 * "git checkout" (both the code to update the files upon checking out a
   different branch, the code to checkout specific set of files) learned
   to stream the data from object store when possible, without having to
   read the entire contents of a file in memory first. An earlier round
   of this code that is not in any released version had a large leak but
   now it has been plugged.

 * "git clone" can now take "--config key=value" option to set the
   repository configuration options that affect the initial checkout.

 * "git commit <paths>..." now lets you feed relative pathspecs that
   refer outside your current subdirectory.

 * "git diff --stat" learned --stat-count option to limit the output of
   diffstat report.

 * "git fetch", "git push" and friends no longer show connection
   errors for addresses that couldn't be connected when at least one
   address succeeds (this is arguably a regression but a deliberate
   one).

 * "git grep" learned --break and --heading options, to let users mimic
   output format of "ack".

 * "git grep" learned "-W" option that shows wider context using the same
   logic used by "git diff" to determine the hunk header.

 * "git rebase master topci" no longer spews usage hints after giving
   "fatal: no such branch: topci" error message.

 * "git stash" learned --include-untracked option.

 * "git submodule update" used to stop at the first error updating a
   submodule; it now goes on to update other submodules that can be
   updated, and reports the ones with errors at the end.

 * "git verify-pack" has been rewritten to use the "index-pack" machinery
   that is more efficient in reading objects in packfiles.

 * test scripts for gitweb tried to run even when CGI-related perl modules
   are not installed; it now exits early when they are unavailable.

Also contains various documentation updates and minor miscellaneous
changes.


Fixes since v1.7.6
------------------

Unless otherwise noted, all the fixes in 1.7.6.X maintenance track are
included in this release.

 * "git checkout -b <branch>" sometimes wrote a bogus reflog entry,
   causing later "git checkout -" fail.
   (merge 71ee7fd jc/checkout-reflog-fix~1 later).

 * "git diff --cc" learned to correctly ignore binary files.
   (merge 0508fe5 jk/combine-diff-binary-etc later)

 * "git fast-export" forgot to quote pathnames with unsafe characters
   in its output.
   (merge 6280dfd jk/fast-export-quote-path later)

 * "git fetch" did not recurse into submodules in subdirectories.
   (merge ea2d325 jl/maint-fetch-recursive-fix later)

 * "git ls-tree" did not error out when asked to show a corrupt tree.
   (merge 04f8925 js/ls-tree-error later)

 * "git pull" without any argument left an extra whitespace after the
   command name in its reflog.
   (merge c98d1e4 oa/pull-reflog later)

 * "git rebase -i -p" incorrectly dropped commits from side branches.
   (merge 12bf828 aw/rebase-i-p later)

 * "git reset [<commit>] paths..." did not reset the index entry correctly
   for unmerged paths.
   (merge ff00b682 jc/maint-reset-unmerged-path later)

 * "git submodule add" did not allow a relative repository path when
   the superproject did not have any default remote url.
   (merge f22a17e8 jl/submodule-add-relurl-wo-upstream later)

 * "git submodule foreach" failed to correctly give the standard input to
   the user-supplied command it invoked.
   (merge 4dca1aa bc/submodule-foreach-stdin-fix-1.7.4 later)

 * "git submodule update --quiet" was not really quiet.
   (merge 7e60407 jl/submodule-update-quiet later)

 * submodules that the user has never showed interest in by running
   "git submodule init" was incorrectly marked as interesting by "git
   submodule sync".
   (merge 2cd9de3 jc/submodule-sync-no-auto-vivify later)

 * "git tag -l <glob>..." did not take multiple glob patterns from the
   command line.
   (merge 588d0e8 jk/tag-list-multiple-patterns later)

--
exec >/var/tmp/1
echo O=$(git describe master)
O=v1.7.6-446-g0af53e1
git log --first-parent --oneline $O..master
echo
git shortlog --no-merges ^maint ^$O master