1Git 2.14 Release Notes 2====================== 3 4Backward 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 22Updates since v2.13 23------------------- 24 25UI, 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 40Performance, 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 66Also contains various documentation updates and code clean-ups. 67 68 69Fixes since v2.13 70----------------- 71 72Unless otherwise noted, all the fixes since v2.13 in the maintenance 73track are contained in this release (see the maintenance releases' 74notes 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).