]> git.ipfire.org Git - thirdparty/git.git/commit
mingw_rename: support ReFS on Windows 2022
authorJohannes Schindelin <johannes.schindelin@gmx.de>
Sun, 3 Aug 2025 21:25:17 +0000 (21:25 +0000)
committerJunio C Hamano <gitster@pobox.com>
Mon, 4 Aug 2025 01:30:39 +0000 (18:30 -0700)
commit51f9b623f276806be92b4f62e061df79cdd397a3
treed8faab3140ae1be297fbd9aac039b3a84c09e991
parentce6ccbaf92ec41743d83c386cad4dba77f768f13
mingw_rename: support ReFS on Windows 2022

ReFS is an alternative filesystem to NTFS. On Windows 2022, it seems not
to support the rename operation using POSIX semantics that Git uses on
Windows as of 391bceae4350 (compat/mingw: support POSIX semantics for
atomic renames, 2024-10-27).

However, Windows 2022 reports `ERROR_NOT_SUPPORTED` in this instance.
This is in contrast to `ERROR_INVALID_PARAMETER` (as previous Windows
versions would report that do not support POSIX semantics in renames at
all).

Let's handle both errors the same: by falling back to the best-effort
option, namely to rename without POSIX semantics.

This fixes https://github.com/git-for-windows/git/issues/5427

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
compat/mingw.c