diff options
author | David Turner <dturner@twopensource.com> | 2017-05-08 11:41:42 +0200 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2017-05-20 18:26:45 +0900 |
commit | edf3b90553f5c667cd8cb99aa809305470ba3bd7 (patch) | |
tree | ef9692e36fe67530a48b599bd8d715a3cd24c77b /unpack-trees.c | |
parent | 4fa66c85f11bc5a541462ca5ae3246aa0ce02e74 (diff) | |
download | git-edf3b90553f5c667cd8cb99aa809305470ba3bd7.tar.gz |
unpack-trees: preserve index extensionsdt/unpack-save-untracked-cache-extension
Make git checkout (and other unpack_tree operations) preserve the
untracked cache. This is valuable for two reasons:
1. Often, an unpack_tree operation will not touch large parts of the
working tree, and thus most of the untracked cache will continue to be
valid.
2. Even if the untracked cache were entirely invalidated by such an
operation, the user has signaled their intention to have such a cache,
and we don't want to throw it away.
[jes: backed out the watchman-specific parts]
Signed-off-by: David Turner <dturner@twopensource.com>
Signed-off-by: Ben Peart <benpeart@microsoft.com>
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'unpack-trees.c')
-rw-r--r-- | unpack-trees.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/unpack-trees.c b/unpack-trees.c index aa15111fef..17117bd0fd 100644 --- a/unpack-trees.c +++ b/unpack-trees.c @@ -1391,6 +1391,7 @@ int unpack_trees(unsigned len, struct tree_desc *t, struct unpack_trees_options WRITE_TREE_SILENT | WRITE_TREE_REPAIR); } + move_index_extensions(&o->result, o->dst_index); discard_index(o->dst_index); *o->dst_index = o->result; } else { |