Fix Windows-related -c options in match_baseline_files by EliahKagan · Pull Request #1871 · GitoxideLabs/gitoxide (original) (raw)

The match_baseline_files.sh fixture script adds entries to the index using git update-index --add --cacheinfo. These entries don't exist on disk, so it should be okay that some would cause problems on Windows if an attempt were made to actually create them. The tests that use the generated repository work on Windows.

It is intended that the fixture script also be able to run on Windows, and Windows-related -c options are passed in commands where they are expected to be needed: core.ignoreCase=false and core.protectNTFS=false.

But the fixture script nonetheless was failing on Windows because two commands that don't need core.ignoreCase=false but do need core.protectNTFS=false had core.ignorecase=false instead. This corrects that.

This fixes two of the long-standing GIX_TEST_IGNORE_ARCHIVES=1 Windows failures reported in #1358:

This includes a regenerated archive (generated on Arch Linux with Git 2.48.1) and updates etc/test-fixtures-windows-expected-failures-see-issue-1358.txt to remove the two tests that now pass on Windows even with GIX_TEST_IGNORE_ARCHIVES=1.

The test-fixtures-windows job currently fails here due to #1849, the same as on main if CI is rerun there, as described in #1849 (comment). If #1870 is merged, the failures should go away. This PR could be rebased after merging if #1870, if desired.