match-trees: convert splice_tree to object_id
[git] / Documentation / RelNotes / 2.17.0.txt
1 Git 2.17 Release Notes
2 ======================
3
4 Updates since v2.16
5 -------------------
6
7 UI, Workflows & Features
8
9  * "diff" family of commands learned "--find-object=<object-id>" option
10    to limit the findings to changes that involve the named object.
11    (merge 4d8c51aa19 sb/diff-blobfind-pickaxe later to maint).
12
13
14 Performance, Internal Implementation, Development Support etc.
15
16  * More perf tests for threaded grep
17    (merge 7b31b55db1 ab/perf-grep-threads later to maint).
18
19  * "perf" test output can be sent to codespeed server.
20    (merge 19cf57a92e cc/codespeed later to maint).
21
22
23 Also contains various documentation updates and code clean-ups.
24
25
26 Fixes since v2.16
27 -----------------
28
29  * An old regression in "git describe --all $annotated_tag^0" has been
30    fixed.
31    (merge 1bba00130a dk/describe-all-output-fix later to maint).
32
33  * "git status" after moving a path in the working tree (hence making
34    it appear "removed") and then adding with the -N option (hence
35    making that appear "added") detected it as a rename, but did not
36    report the  old and new pathnames correctly.
37    (merge 176ea74793 nd/ita-wt-renames-in-status later to maint).
38
39  * "git svn dcommit" did not take into account the fact that a
40    svn+ssh:// URL with a username@ (typically used for pushing) refers
41    to the same SVN repository without the username@ and failed when
42    svn.pushmergeinfo option is set.
43    (merge 8aaed892fd jm/svn-pushmergeinfo-fix later to maint).
44
45  * API clean-up around revision traversal.
46    (merge 6fcec2f9ae rs/lose-leak-pending later to maint).
47
48  * "git merge -Xours/-Xtheirs" learned to use our/their version when
49    resolving a conflicting updates to a symbolic link.
50    (merge fd48b46474 jc/merge-symlink-ours-theirs later to maint).
51
52  * "git clone $there $here" is allowed even when here directory exists
53    as long as it is an empty directory, but the command incorrectly
54    removed it upon a failure of the operation.
55    (merge d45420c1c8 jk/abort-clone-with-existing-dest later to maint).
56
57  * "git commit --fixup" did not allow "-m<message>" option to be used
58    at the same time; allow it to annotate resulting commit with more
59    text.
60    (merge 30884c9afc ab/commit-m-with-fixup later to maint).
61
62  * When resetting the working tree files recursively, the working tree
63    of submodules are now also reset to match.
64    (merge 7dcc1f4df8 sb/submodule-update-reset-fix later to maint).
65
66  * "git stash -- <pathspec>" incorrectly blew away untracked files in
67    the directory that matched the pathspec, which has been corrected.
68    (merge bba067d2fa tg/stash-with-pathspec-fix later to maint).
69
70  * Instead of maintaining home-grown email address parsing code, ship
71    a copy of reasonably recent Mail::Address to be used as a fallback
72    in 'git send-email' when the platform lacks it.
73    (merge d60be8acab mm/send-email-fallback-to-local-mail-address later to maint).
74
75  * "git add -p" was taught to ignore local changes to submodules as
76    they do not interfere with the partial addition of regular changes
77    anyway.
78    (merge 12434efc1d nd/add-i-ignore-submodules later to maint).
79
80  * Other minor doc, test and build updates and code cleanups.
81    (merge e2a5a028c7 bw/oidmap-autoinit later to maint).
82    (merge f0a6068a9f ys/bisect-object-id-missing-conversion-fix later to maint).
83    (merge 30221a3389 as/read-tree-prefix-doc-fix later to maint).
84    (merge 9bd2ce5432 ab/doc-cat-file-e-still-shows-errors later to maint).