X-Git-Url: http://git.osdn.net/view?a=blobdiff_plain;f=Documentation%2FRelNotes%2F2.15.0.txt;h=face5e0b0236c6f28ffecee61f92693ddc11d7a4;hb=8fb8a945bc2dea2bb04249213ad8dacffbfc604f;hp=9b5c417b0e958ecceecbdfb94b88d07a4b57a194;hpb=48f1e49be19ab64f9dfdffa32073dd1dbbf04727;p=git-core%2Fgit.git diff --git a/Documentation/RelNotes/2.15.0.txt b/Documentation/RelNotes/2.15.0.txt index 9b5c417b0..face5e0b0 100644 --- a/Documentation/RelNotes/2.15.0.txt +++ b/Documentation/RelNotes/2.15.0.txt @@ -80,6 +80,21 @@ UI, Workflows & Features * The codepath to call external process filter for smudge/clean operation learned to show the progress meter. + * "git rev-parse" learned "--is-shallow-repository", that is to be + used in a way similar to existing "--is-bare-repository" and + friends. + + * "git describe --match " has been taught to play well with + the "--all" option. + + * "git branch" learned "-c/-C" to create a new branch by copying an + existing one. + + * Some commands (most notably "git status") makes an opportunistic + update when performing a read-only operation to help optimize later + operations in the same repository. The new "--no-optional-locks" + option can be passed to Git to disable them. + Performance, Internal Implementation, Development Support etc. @@ -167,6 +182,42 @@ Performance, Internal Implementation, Development Support etc. * Many leaks of strbuf have been fixed. + * "git imap-send" has our own implementation of the protocol and also + can use more recent libCurl with the imap protocol support. Update + the latter so that it can use the credential subsystem, and then + make it the default option to use, so that we can eventually + deprecate and remove the former. + + * "make style" runs git-clang-format to help developers by pointing + out coding style issues. + + * A test to demonstrate "git mv" failing to adjust nested submodules + has been added. + (merge c514167df2 hv/mv-nested-submodules-test later to maint). + + * On Cygwin, "ulimit -s" does not report failure but it does not work + at all, which causes an unexpected success of some tests that + expect failures under a limited stack situation. This has been + fixed. + + * Many codepaths have been updated to squelch -Wimplicit-fallthrough + warnings from Gcc 7 (which is a good code hygiene). + + * Add a helper for DLL loading in anticipation for its need in a + future topic RSN. + + * "git status --ignored", when noticing that a directory without any + tracked path is ignored, still enumerated all the ignored paths in + the directory, which is unnecessary. The codepath has been + optimized to avoid this overhead. + + * The final batch to "git rebase -i" updates to move more code from + the shell script to C has been merged. + + * Operations that do not touch (majority of) packed refs have been + optimized by making accesses to packed-refs file lazy; we no longer + pre-parse everything, and an access to a single ref in the + packed-refs does not touch majority of irrelevant refs, either. Also contains various documentation updates and code clean-ups. @@ -296,6 +347,101 @@ Fixes since v2.14 to match the behaviour of the former. (merge c818e74332 rk/commit-tree-make-F-verbatim later to maint). + * Many codepaths did not diagnose write failures correctly when disks + go full, due to their misuse of write_in_full() helper function, + which have been corrected. + (merge f48ecd38cb jk/write-in-full-fix later to maint). + + * "git help co" now says "co is aliased to ...", not "git co is". + (merge b3a8076e0d ks/help-alias-label later to maint). + + * "git archive", especially when used with pathspec, stored an empty + directory in its output, even though Git itself never does so. + This has been fixed. + (merge 4318094047 rs/archive-excluded-directory later to maint). + + * API error-proofing which happens to also squelch warnings from GCC. + (merge c788c54cde tg/refs-allowed-flags later to maint). + + * The explanation of the cut-line in the commit log editor has been + slightly tweaked. + (merge 8c4b1a3593 ks/commit-do-not-touch-cut-line later to maint). + + * "git gc" tries to avoid running two instances at the same time by + reading and writing pid/host from and to a lock file; it used to + use an incorrect fscanf() format when reading, which has been + corrected. + (merge afe2fab72c aw/gc-lockfile-fscanf-fix later to maint). + + * The scripts to drive TravisCI has been reorganized and then an + optimization to avoid spending cycles on a branch whose tip is + tagged has been implemented. + (merge 8376eb4a8f ls/travis-scriptify later to maint). + + * The test linter has been taught that we do not like "echo -e". + (merge 1a6d46895d tb/test-lint-echo-e later to maint). + + * Code cmp.std.c nitpick. + (merge ac7da78ede mh/for-each-string-list-item-empty-fix later to maint). + + * A regression fix for 2.11 that made the code to read the list of + alternate object stores overrun the end of the string. + (merge f0f7bebef7 jk/info-alternates-fix later to maint). + + * "git describe --match" learned to take multiple patterns in v2.13 + series, but the feature ignored the patterns after the first one + and did not work at all. This has been fixed. + (merge da769d2986 jk/describe-omit-some-refs later to maint). + + * "git filter-branch" cannot reproduce a history with a tag without + the tagger field, which only ancient versions of Git allowed to be + created. This has been corrected. + (merge b2c1ca6b4b ic/fix-filter-branch-to-handle-tag-without-tagger later to maint). + + * "git cat-file --textconv" started segfaulting recently, which + has been corrected. + (merge cc0ea7c9e5 jk/diff-blob later to maint). + + * The built-in pattern to detect the "function header" for HTML did + not match

..

elements without any attributes, which has + been fixed. + (merge 9c03caca2c ik/userdiff-html-h-element-fix later to maint). + + * "git mailinfo" was loose in decoding quoted printable and produced + garbage when the two letters after the equal sign are not + hexadecimal. This has been fixed. + (merge c8cf423eab rs/mailinfo-qp-decode-fix later to maint). + + * The machinery to create xdelta used in pack files received the + sizes of the data in size_t, but lost the higher bits of them by + storing them in "unsigned int" during the computation, which is + fixed. + + * The delta format used in the packfile cannot reference data at + offset larger than what can be expressed in 4-byte, but the + generator for the data failed to make sure the offset does not + overflow. This has been corrected. + + * The documentation for '-X