Here is a refined version of an earlier patch series to use cache-tree information to optimize comparison between the index with an existing commit. Recently there was a discussion to auto-commit any change to the index that are going to be discarded to some kind of "trash" branch; I am not personally interested in writing a patch to do so, but this will also help such a feature by making it cheaper to see if there are differences worth saving. Junio C Hamano (5): write-tree --ignore-cache-tree cache-tree.c::cache_tree_find(): simplify inernal API t4007: modernize the style Optimize "diff-index --cached" using cache-tree Avoid "diff-index --cached" optimization under --find-copies-harder builtin-write-tree.c | 12 ++++++-- cache-tree.c | 44 +++++++++++++++++++++++++++-- cache-tree.h | 10 ++++++- diff-lib.c | 3 ++ t/t4007-rename-3.sh | 74 +++++++++++++++++++++++++------------------------- unpack-trees.c | 17 +++++++++++ unpack-trees.h | 1 + 7 files changed, 117 insertions(+), 44 deletions(-) -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html