A VFS for Git user reported [1] that the background maintenance did not seem to be doing anything. At least, the 'git multi-pack-index expire' and 'git multi-pack-index repack' steps did nothing. The 'write' subcommand worked to collect all pack-files into a single multi-pack-index file, but the packs were only growing in number instead of being maintained carefully. [1] https://github.com/microsoft/git/issues/497 The root issue is about path comparisons between Windows and Unix path styles. The fix is two-fold: * Patch 1 performs real-path normalization at a low-level where it is required. * Patch 2 performs real-path normalization at a high-level to be extra safe. I'm not exactly sure how to test this properly in the Git codebase, but I'm looking to add some tests into VFS for Git to ensure this doesn't regress in the future. Thanks, -Stolee Derrick Stolee (2): midx: use real paths in lookup_multi_pack_index() multi-pack-index: use --object-dir real path builtin/multi-pack-index.c | 19 ++++++++++++++++--- midx.c | 17 +++++++++++++---- 2 files changed, 29 insertions(+), 7 deletions(-) base-commit: 6cd33dceed60949e2dbc32e3f0f5e67c4c882e1e Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-1221%2Fderrickstolee%2Fmidx-normalize-object-dir-v1 Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-1221/derrickstolee/midx-normalize-object-dir-v1 Pull-Request: https://github.com/gitgitgadget/git/pull/1221 -- gitgitgadget