|
| 1 | +Git 2.14 Release Notes |
| 2 | +====================== |
| 3 | + |
| 4 | +Backward compatibility notes. |
| 5 | + |
| 6 | + * Use of an empty string as a pathspec element that is used for |
| 7 | + 'everything matches' is still warned and Git asks users to use a |
| 8 | + more explicit '.' for that instead. The hope is that existing |
| 9 | + users will not mind this change, and eventually the warning can be |
| 10 | + turned into a hard error, upgrading the deprecation into removal of |
| 11 | + this (mis)feature. That is not scheduled to happen in the upcoming |
| 12 | + release (yet). |
| 13 | + |
| 14 | + * Git now avoids blindly falling back to ".git" when the setup |
| 15 | + sequence said we are _not_ in Git repository. A corner case that |
| 16 | + happens to work right now may be broken by a call to die("BUG"). |
| 17 | + We've tried hard to locate such cases and fixed them, but there |
| 18 | + might still be cases that need to be addressed--bug reports are |
| 19 | + greatly appreciated. |
| 20 | + |
| 21 | + |
| 22 | +Updates since v2.13 |
| 23 | +------------------- |
| 24 | + |
| 25 | +UI, Workflows & Features |
| 26 | + |
| 27 | + * The colors in which "git status --short --branch" showed the names |
| 28 | + of the current branch and its remote-tracking branch are now |
| 29 | + configurable. |
| 30 | + |
| 31 | + * "git clone" learned the "--no-tags" option not to fetch all tags |
| 32 | + initially, and also set up the tagopt not to follow any tags in |
| 33 | + subsequent fetches. |
| 34 | + |
| 35 | + * "git archive --format=zip" learned to use zip64 extension when |
| 36 | + necessary to go beyond the 4GB limit. |
| 37 | + (merge 867e40ff3a rs/large-zip later to maint). |
| 38 | + |
| 39 | + |
| 40 | +Performance, Internal Implementation, Development Support etc. |
| 41 | + |
| 42 | + * The default packed-git limit value has been raised on larger |
| 43 | + platforms to save "git fetch" from a (recoverable) failure while |
| 44 | + "gc" is running in parallel. |
| 45 | + |
| 46 | + * Code to update the cache-tree has been tightened so that we won't |
| 47 | + accidentally write out any 0{40} entry in the tree object. |
| 48 | + (merge a96d3cc3f6 jk/no-null-sha1-in-cache-tree later to maint). |
| 49 | + |
| 50 | + * Attempt to allow us notice "fishy" situation where we fail to |
| 51 | + remove the temporary directory used during the test. |
| 52 | + |
| 53 | + * Travis CI gained a task to format the documentation with both |
| 54 | + AsciiDoc and AsciiDoctor. |
| 55 | + (merge 505ad91304 ls/travis-doc-asciidoctor later to maint). |
| 56 | + |
| 57 | + * Some platforms have ulong that is smaller than time_t, and our |
| 58 | + historical use of ulong for timestamp would mean they cannot |
| 59 | + represent some timestamp that the platform allows. Invent a |
| 60 | + separate and dedicated timestamp_t (so that we can distingiuish |
| 61 | + timestamps and a vanilla ulongs, which along is already a good |
| 62 | + move), and then declare uintmax_t is the type to be used as the |
| 63 | + timestamp_t. |
| 64 | + |
| 65 | + |
| 66 | +Also contains various documentation updates and code clean-ups. |
| 67 | + |
| 68 | + |
| 69 | +Fixes since v2.13 |
| 70 | +----------------- |
| 71 | + |
| 72 | +Unless otherwise noted, all the fixes since v2.13 in the maintenance |
| 73 | +track are contained in this release (see the maintenance releases' |
| 74 | +notes for details). |
| 75 | + |
| 76 | + * "git gc" did not interact well with "git worktree"-managed |
| 77 | + per-worktree refs. |
| 78 | + |
| 79 | + * "git cherry-pick" and other uses of the sequencer machinery |
| 80 | + mishandled a trailer block whose last line is an incomplete line. |
| 81 | + This has been fixed so that an additional sign-off etc. are added |
| 82 | + after completing the existing incomplete line. |
| 83 | + (merge 44dc738a39 jt/use-trailer-api-in-commands later to maint). |
| 84 | + |
| 85 | + * The codepath in "git am" that is used when running "git rebase" |
| 86 | + leaked memory held for the log message of the commits being rebased. |
| 87 | + (merge 721f5f1e35 jk/am-leakfix later to maint). |
| 88 | + |
| 89 | + * "git clone --config var=val" is a way to populate the |
| 90 | + per-repository configuration file of the new repository, but it did |
| 91 | + not work well when val is an empty string. This has been fixed. |
| 92 | + (merge db4eca1fea jn/clone-add-empty-config-from-command-line later to maint). |
| 93 | + |
| 94 | + * Other minor doc, test and build updates and code cleanups. |
| 95 | + (merge 515360f9e9 jn/credential-doc-on-clear later to maint). |
| 96 | + (merge 0e6d899fee ab/aix-needs-compat-regex later to maint). |
| 97 | + (merge e294e8959f jc/apply-fix-mismerge later to maint). |
0 commit comments