This is based on ds/cache-tree-basics. Here are a few more cleanups that are vaguely related to the index. I discovered these while preparing my sparse-index RFC that I intend to send early next week. The biggest patch is the final one, which creates a test script for comparing sparse-checkouts to full checkouts. There are some commands that do not behave similarly. This script will be the backbone of my testing strategy for the sparse-index by adding a new mode to compare sparse-checkouts with the two index types (full and sparse). Thanks, -Stolee Derrick Stolee (9): cache-tree: clean up cache_tree_update() cache-tree: extract subtree_pos() fsmonitor: de-duplicate BUG()s around dirty bits repository: add repo reference to index_state name-hash: use trace2 regions for init sparse-checkout: load sparse-checkout patterns sparse-checkout: hold pattern list in index test-lib: test_region looks for trace2 regions t1092: test interesting sparse-checkout scenarios builtin/sparse-checkout.c | 22 +- cache-tree.c | 20 +- cache-tree.h | 2 + cache.h | 3 + dir.c | 17 ++ dir.h | 2 + fsmonitor.c | 27 +- name-hash.c | 3 + repository.c | 4 + t/t0500-progress-display.sh | 3 +- t/t1092-sparse-checkout-compatibility.sh | 323 +++++++++++++++++++++++ t/test-lib-functions.sh | 40 +++ unpack-trees.c | 6 +- 13 files changed, 431 insertions(+), 41 deletions(-) create mode 100755 t/t1092-sparse-checkout-compatibility.sh base-commit: a4b6d202caad83c6dc29abe9b17e53a1b3fb54a0 Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-839%2Fderrickstolee%2Fmore-index-cleanups-v1 Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-839/derrickstolee/more-index-cleanups-v1 Pull-Request: https://github.com/gitgitgadget/git/pull/839 -- gitgitgadget