From: tboegi@web.de Date: Sun, 25 Oct 2026 18:06:18 GMT Subject: [PATCH v3 1/1] t1450: use 'mv -f' when overwriting a read-only file Message-ID: <20261025180618.16899-1-tboegi@web.de> In-Reply-To: From: Torsten Bögershausen Test case 38 in t/t1450-fsck.sh ("rev-list --verify-objects with truncated loose blob") replaces a loose blob with a truncated version using `mv obj.tmp "$obj"`. Because Git creates loose objects as read-only files, this step attempts to overwrite a read-only file. When running the test, older versions of macOS `mv(1)` (prior to 12.3) will prompt the user for confirmation (somewhat shortened): override r--r--r-- user/staff for .git/objects/fc/a75a5be3823dc0560da5? (y/n [n]) not overwritten fca75a5be3823dc0560da57ade678f212aeb33f6 As the answer is not 'y', the file is not overwritten and the test case fails. Use `mv -f` to force the overwrite and avoid the interactive prompt. Helped-By: Tuomas Ahola Helped-By: Junio C Hamano Signed-off-by: Torsten Bögershausen --- v3: Use a much shorter commit message, as suggested from Junio. Mention that MacOs 12.3 has fixed this. t/t1450-fsck.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/t/t1450-fsck.sh b/t/t1450-fsck.sh index 16cc5d5dcb..335dcbf0af 100755 --- a/t/t1450-fsck.sh +++ b/t/t1450-fsck.sh @@ -548,7 +548,7 @@ test_expect_success 'rev-list --verify-objects with truncated loose blob' ' # Truncate the loose blob such that its header can still be # parsed, but reading the object data fails mid-stream. test_copy_bytes 64 <"$obj" >obj.tmp && - mv obj.tmp "$obj" && + mv -f obj.tmp "$obj" && test_must_fail git rev-list --verify-objects "$blob" 2>err && test_grep "hash mismatch" err -- 2.53.0.154.g7c02d39fc2