diff --git a/read-cache.c b/read-cache.c index 9aaba14073672c..ebe88cd039dd1c 100644 --- a/read-cache.c +++ b/read-cache.c @@ -2405,7 +2405,8 @@ int do_read_index(struct index_state *istate, const char *path, int must_exist) if (!istate->repo) istate->repo = the_repository; prepare_repo_settings(istate->repo); - if (istate->repo->settings.command_requires_full_index) + if (!istate->repo->settings.sparse_index || + istate->repo->settings.command_requires_full_index) ensure_full_index(istate); return istate->cache_nr;