Subject: Expected test suite behavior

From: Amogh Dambal <[email-masked]>
Date: Sun, 24 May 2026 22:38:46 -0700

Hey folks,

I wanted to get started hacking on/poking around the Git source, but I'm 
seeing some behavior with the tests that I can't quite figure out.

I've downloaded the full source tree from the GitHub mirror: 
https://github.com/git/git/tree/master. I'm using a Docker container as 
a development environment with the following information:

root@5d8a4c9110e2:~/git# uname -a
Linux 5d8a4c9110e2 6.10.14-linuxkit #1 SMP Mon Feb 24 16:35:16 UTC 2025 
aarch64 GNU/Linux

root@5d8a4c9110e2:~/git# cat /etc/os-release
PRETTY_NAME="Debian GNU/Linux 13 (trixie)"
NAME="Debian GNU/Linux"
VERSION_ID="13"
VERSION="13 (trixie)"
VERSION_CODENAME=trixie
DEBIAN_VERSION_FULL=13.5
ID=debian
HOME_URL="https://www.debian.org/"
SUPPORT_URL="https://www.debian.org/support"
BUG_REPORT_URL="https://bugs.debian.org/"

The Docker container is run like so: `docker run -it -v $(PWD):/root/git 
-w /root/git git-debian:latest` from an image built from the following 
Dockerfile:

FROM debian:stable

LABEL Description="Debian (stable) build environment for Git"

# Install Git library dependencies
# https://git-scm.com/book/en/v2/Getting-Started-Installing-Git
RUN apt-get update && apt-get upgrade && \
      apt-get install -y dh-autoreconf libcurl4-gnutls-dev libexpat1-dev \
          gettext libz-dev libssl-dev asciidoc xmlto docbook2x \
          make cargo cvs subversion install-info

# Set environment variables
ENV HOME=/root

# Launch the bash shell by default
CMD ["/bin/bash"]

I'm able to successfully run `make` + `make configure` + `make all doc 
info` but `make test` fails, the following tests specifically:

not ok 1 - plain
not ok 2 - plain nested in bare
not ok 3 - plain through aliased command, outside any git repo
not ok 4 - plain nested through aliased command
not ok 5 - plain nested in bare through aliased command
not ok 8 - plain bare
not ok 10 - GIT_DIR bare
not ok 11 - init --bare
not ok 12 - GIT_DIR non-bare
not ok 13 - GIT_DIR & GIT_WORK_TREE (1)
not ok 20 - init --bare/--shared overrides system/global config
not ok 28 - init creates a new deep directory (umask vs. shared)
not ok 63 - extensions.refStorage with files backend

as does `prove -j$(nproc) --shuffle t[0-9]*.sh`. I've attached the full 
test summary which includes all failed tests (it's 17KB, hence why not 
inline). All the failures report `(Wstat: 256 (exited 1)`.

I've read through Documentation/MyFirstContribution.adoc and t/README, 
and gone through the mailing list archives, but I'm not seeing anything 
outlining why these tests would fail, nor am I seeing a common pattern 
in the failing test scripts that'd point to e.g. a missing dependency.

Is there a README/documentation I've missed reading that can help 
explain the behavior I'm seeing?

Thanks,
Amogh