Jeff King <peff@xxxxxxxx> writes: > This second test seems to fail on Windows. E.g., in this CI job: > > https://github.com/git/git/actions/runs/16509422831/job/46688307091 > > Right before the failure, the trace shows that we are setting PATH like > this: > > ++env 'PATH=D:/a/git/git/t/trash directory.t7510-signed-commit:/d/a/git/git:/d/a/git/git/t/helper:/c/Users/runneradmin/path:/mingw64/bin:/usr/bin/:/usr/bin/core_perl:/c/WINDOWS/system32:/c/WINDOWS:/c/WINDOWS/System32/Wbem' > > Should it be "/d/a/git/git/..." instead of "D:/a/git/git/..."? Which we > could get by using $PWD, I think. > > The earlier one using $HOME uses D:/, but this one is different because > colons are meaningful separators in $PATH. Here is what I have on top of the posted patches. If today's integration goes well, I plan to merge it to 'next'; the rest of the series is already in 'next'. ---- >8 ---- Subject: [PATCH] t7510: Windows fix $PATH and $(pwd) does not mix very well, because PATH is a colon separated list of directories, but on Windows port of the shell Git-for-Windows uses, $(pwd) looks like "D:/path/to/a/directory". With $PWD, we would get /d/path/to/a/directory instead, which would fit better on $PATH. This broke Windows CI job. While at it, drop unnecessary use of "env VAR=VAL" before "git commit"; one-shot export "VAR=VAL git commit" is sufficient. Helped-by: Jeff King <peff@xxxxxxxx> Signed-off-by: Junio C Hamano <gitster@xxxxxxxxx> --- t/t7510-signed-commit.sh | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/t/t7510-signed-commit.sh b/t/t7510-signed-commit.sh index 95d2ebe277..c51e2e2589 100755 --- a/t/t7510-signed-commit.sh +++ b/t/t7510-signed-commit.sh @@ -453,13 +453,11 @@ test_expect_success 'custom `gpg.program`' ' # `gpg.program` starts with `~`, the path should be interpreted to be relative to `$HOME` test_config gpg.program "~/fake-gpg" && - env HOME="$(pwd)" \ - git commit -S --allow-empty -m signed-commit && + HOME="$(pwd)" git commit -S --allow-empty -m signed-commit && # `gpg.program` does not specify an absolute path, it should find a program in `$PATH` test_config gpg.program "fake-gpg" && - env PATH="$(pwd):$PATH" \ - git commit -S --allow-empty -m signed-commit + PATH="$PWD:$PATH" git commit -S --allow-empty -m signed-commit ' test_done -- 2.50.1-589-gf1cdebda82