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 /read-cache.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 'read-cache.c')
-rw-r--r-- | read-cache.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/read-cache.c b/read-cache.c index 0d0081a11b..79827a4d71 100644 --- a/read-cache.c +++ b/read-cache.c @@ -2628,3 +2628,9 @@ void stat_validity_update(struct stat_validity *sv, int fd) fill_stat_data(sv->sd, &st); } } + +void move_index_extensions(struct index_state *dst, struct index_state *src) +{ + dst->untracked = src->untracked; + src->untracked = NULL; +} |