On 2026-05-25 at 22:25:11, Amogh Dambal wrote: > > What are the OS and file system on the host? We tend to see > > executable bits set when NTFS, FAT, or other Windows-adjacent file > > systems are used on Linux and you're mounting `$(PWD)` into the > > container as a volume. > > Ah, this is a smoking gun. I'm not on a Windows-adjacent file system; I'm > running macOS Sequoia 15.5 on the host. Specifically: > > $ uname -msprsv > Darwin 24.5.0 Darwin Kernel Version 24.5.0: Tue Apr 22 19:54:26 PDT 2025; > root:xnu-11417.121.6~2/RELEASE_ARM64_T8112 arm64 arm > > But I am mounting $(PWD) into the container as a volume. I wouldn't expect that to be a problem, then. macOS uses Unix-style permissions and I've never seen odd permissions behaviour mounting a macOS APFS file system into a container. I will, however, note that I am using a case-sensitive APFS volume, but I cannot imagine how this would occur with _any_ macOS APFS volume mounted into a Linux container. > > Git doesn't use `/tmp` for most files in the tests. Those are stored > > under `t/`, so you'd want to create your test directory there. > > ACK, good to know, thanks! I am still seeing the same behavior with a > `debug` directory under `t/`: > > root@ec94ab1b260e:~/git/t/debug# /root/git/git init plain > root@ec94ab1b260e:~/git/t/debug# ls -alhrt > /root/git/t/debug/plain/.git/config > -rw-r--r-- 1 root root 111 May 25 22:24 /root/git/t/debug/plain/.git/config I think I know what the problem is: you're running as root. I suspect `test -x` in the test says that you have permission to execute it because you're root and root always ignores permissions. My guess is that most of the tests you're failing have to do with permissions of some sort that are being ignored because you're privileged. In general, you would not want to run this as root. Use `adduser` to create yourself a regular user and then use the `USER` directive in the Dockerfile to change users. I don't run the tests as root and I'm sure none of the other regular contributors do, either. Running unprivileged in a container is a best practice anyway. I'll just note that if you just want to do Git development, macOS is a fully supported platform on which to do that. I will admit most of the major contributors (with the notable exception of the Git for Windows maintainer) do use Linux and of course I like and endorse Debian, but macOS should build and run just fine if you prefer that. But if you do want to use a container, I'd try unprivileged and see if substantially more of the tests pass. -- brian m. carlson (they/them) Toronto, Ontario, CA