Merge branch 'jk/fetch-all-peeled-fix'
[git.git] / Documentation / RelNotes / 2.19.0.txt
blob2954653d10ea4a64a3f8706e67267aeb9f801e48
1 Git 2.19 Release Notes
2 ======================
4 Updates since v2.18
5 -------------------
7 UI, Workflows & Features
9  * "git diff" compares the index and the working tree.  For paths
10    added with intent-to-add bit, the command shows the full contents
11    of them as added, but the paths themselves were not marked as new
12    files.  They are now shown as new by default.
14    "git apply" learned the "--intent-to-add" option so that an
15    otherwise working-tree-only application of a patch will add new
16    paths to the index marked with the "intent-to-add" bit.
19 Performance, Internal Implementation, Development Support etc.
21  * The bulk of "git submodule foreach" has been rewritten in C.
23  * The in-core "commit" object had an all-purpose "void *util" field,
24    which was tricky to use especially in library-ish part of the
25    code.  All of the existing uses of the field has been migrated to a
26    more dedicated "commit-slab" mechanism and the field is eliminated.
28  * A less often used command "git show-index" has been modernized.
29    (merge fb3010c31f jk/show-index later to maint).
31  * The conversion to pass "the_repository" and then "a_repository"
32    throughout the object access API continues.
34  * Continuing with the idea to programatically enumerate various
35    pieces of data required for command line completion, teach the
36    codebase to report the list of configuration variables
37    subcommands care about to help complete them.
39  * Separate "rebase -p" codepath out of "rebase -i" implementation to
40    slim down the latter and make it easier to manage.
43 Fixes since v2.18
44 -----------------
46  * "git remote update" can take both a single remote nickname and a
47    nickname for remote groups, and the completion script (in contrib/)
48    has been taught about it.
49    (merge 9cd4382ad5 ls/complete-remote-update-names later to maint).
51  * "git fetch --shallow-since=<cutoff>" that specifies the cut-off
52    point that is newer than the existing history used to end up
53    grabbing the entire history.  Such a request now errors out.
54    (merge e34de73c56 nd/reject-empty-shallow-request later to maint).
56  * Code cleanup.
57    (merge aee9be2ebe sg/update-ref-stdin-cleanup later to maint).