diff options
author | Victoria Dye <vdye@github.com> | 2021-11-23 00:20:33 +0000 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2021-11-24 16:32:39 -0800 |
commit | 7ca4fc8819e60bbeb21a8684af182d321b338c47 (patch) | |
tree | e2b27792260228884edabebf1818828a6b6efc22 /t/t7518-ident-corner-cases.sh | |
parent | sparse-index: add ensure_correct_sparsity function (diff) | |
download | tgif-7ca4fc8819e60bbeb21a8684af182d321b338c47.tar.xz |
sparse-index: update do_read_index to ensure correct sparsity
Unless `command_requires_full_index` forces index expansion, ensure in-core
index sparsity matches config settings on read by calling
`ensure_correct_sparsity`. This makes the behavior of the in-core index more
consistent between different methods of updating sparsity: manually changing
the `index.sparse` config setting vs. executing
`git sparse-checkout --[no-]sparse-index init`
Although index sparsity is normally updated with `git sparse-checkout init`,
ensuring correct sparsity after a manual `index.sparse` change has some
practical benefits:
1. It allows for command-by-command sparsity toggling with
`-c index.sparse=<true|false>`, e.g. when troubleshooting issues with the
sparse index.
2. It prevents users from experiencing abnormal slowness after setting
`index.sparse` to `true` due to use of a full index in all commands until
the on-disk index is updated.
Helped-by: Junio C Hamano <gitster@pobox.com>
Co-authored-by: Derrick Stolee <dstolee@microsoft.com>
Signed-off-by: Victoria Dye <vdye@github.com>
Reviewed-by: Elijah Newren <newren@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 't/t7518-ident-corner-cases.sh')
0 files changed, 0 insertions, 0 deletions