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
|
Git 2.14 Release Notes
======================
Backward compatibility notes.
* Use of an empty string as a pathspec element that is used for
'everything matches' is still warned and Git asks users to use a
more explicit '.' for that instead. The hope is that existing
users will not mind this change, and eventually the warning can be
turned into a hard error, upgrading the deprecation into removal of
this (mis)feature. That is not scheduled to happen in the upcoming
release (yet).
* Git now avoids blindly falling back to ".git" when the setup
sequence said we are _not_ in Git repository. A corner case that
happens to work right now may be broken by a call to die("BUG").
We've tried hard to locate such cases and fixed them, but there
might still be cases that need to be addressed--bug reports are
greatly appreciated.
Updates since v2.13
-------------------
UI, Workflows & Features
* The colors in which "git status --short --branch" showed the names
of the current branch and its remote-tracking branch are now
configurable.
* "git clone" learned the "--no-tags" option not to fetch all tags
initially, and also set up the tagopt not to follow any tags in
subsequent fetches.
* "git archive --format=zip" learned to use zip64 extension when
necessary to go beyond the 4GB limit.
(merge 867e40ff3a rs/large-zip later to maint).
Performance, Internal Implementation, Development Support etc.
* The default packed-git limit value has been raised on larger
platforms to save "git fetch" from a (recoverable) failure while
"gc" is running in parallel.
* Code to update the cache-tree has been tightened so that we won't
accidentally write out any 0{40} entry in the tree object.
(merge a96d3cc3f6 jk/no-null-sha1-in-cache-tree later to maint).
* Attempt to allow us notice "fishy" situation where we fail to
remove the temporary directory used during the test.
* Travis CI gained a task to format the documentation with both
AsciiDoc and AsciiDoctor.
(merge 505ad91304 ls/travis-doc-asciidoctor later to maint).
* Some platforms have ulong that is smaller than time_t, and our
historical use of ulong for timestamp would mean they cannot
represent some timestamp that the platform allows. Invent a
separate and dedicated timestamp_t (so that we can distingiuish
timestamps and a vanilla ulongs, which along is already a good
move), and then declare uintmax_t is the type to be used as the
timestamp_t.
* We can trigger Windows auto-build tester (credits: Dscho &
Microsoft) from our existing Travis CI tester now.
Also contains various documentation updates and code clean-ups.
Fixes since v2.13
-----------------
Unless otherwise noted, all the fixes since v2.13 in the maintenance
track are contained in this release (see the maintenance releases'
notes for details).
* "git gc" did not interact well with "git worktree"-managed
per-worktree refs.
* "git cherry-pick" and other uses of the sequencer machinery
mishandled a trailer block whose last line is an incomplete line.
This has been fixed so that an additional sign-off etc. are added
after completing the existing incomplete line.
(merge 44dc738a39 jt/use-trailer-api-in-commands later to maint).
* The codepath in "git am" that is used when running "git rebase"
leaked memory held for the log message of the commits being rebased.
(merge 721f5f1e35 jk/am-leakfix later to maint).
* "git clone --config var=val" is a way to populate the
per-repository configuration file of the new repository, but it did
not work well when val is an empty string. This has been fixed.
(merge db4eca1fea jn/clone-add-empty-config-from-command-line later to maint).
* Setting "log.decorate=false" in the configuration file did not take
effect in v2.13, which has been corrected.
(merge c74271aae7 ah/log-decorate-default-to-auto later to maint).
* A few codepaths in "checkout" and "am" working on an unborn branch
tried to access an uninitialized piece of memory.
(merge 57e0ef0e0e rs/checkout-am-fix-unborn later to maint).
* The Web interface to gmane news archive is long gone, even though
the articles are still accessible via NTTP. Replace the links with
ones to public-inbox.org. Because their message identification is
based on the actual message-id, it is likely that it will be easier
to migrate away from it if/when necessary.
(merge 5840eb9d14 ab/doc-replace-gmane-links later to maint).
* The receive-pack program now makes sure that the push certificate
records the same set of push options used for pushing.
(merge cbaf82cc6b jt/push-options-doc later to maint).
* Tests have been updated to pass under GETTEXT_POISON (a mechanism
to ensure that output strings that should not be translated are
not translated by mistake), and TravisCI is told to run them.
(merge b8e188f6f5 ab/fix-poison-tests later to maint).
* Other minor doc, test and build updates and code cleanups.
(merge 515360f9e9 jn/credential-doc-on-clear later to maint).
(merge 0e6d899fee ab/aix-needs-compat-regex later to maint).
(merge e294e8959f jc/apply-fix-mismerge later to maint).
(merge 7f1b225153 bw/submodule-with-bs-path later to maint).
(merge c8f7c8b704 tb/dedup-crlf-tests later to maint).
|