Re: [PATCH] t7500: fix tests with absolute path following ":(optional)" on Windows
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Oct 20, 2025, 18:06 UTC
- Message-ID
- <xmqqtsztzbvo.fsf@gitster.g>
- In-Reply-To
- <5d780103-285b-4e6c-9b26-2a87609837cf@kdbg.org>
Johannes Sixt <j6t@kdbg.org> writes:
Show 11 quoted lines
> Am 20.10.25 um 15:43 schrieb Ben Knoble: >> Going forward I will probably stick with using pwd, given the >> difference in platform behavior. > $(pwd) is usually safe, but not always. If we have to look at every > instance anyway, we can use $PWD for efficiency if it does not matter, > and $(pwd) only when it is necessary. > >> Is there a doc or test lint for that? If not, might be useful. > > If this were documented somewhere, would you have found it and obeyed > the recommendations?
I myself forget about it every time, even after getting bitten at least 3 times in the past, maybe more.
t/README has this.
- When a test checks for an absolute path that a git command generated, construct the expected value using $(pwd) rather than $PWD, $TEST_DIRECTORY, or $TRASH_DIRECTORY. It makes a difference on Windows, where the shell (MSYS bash) mangles absolute path names. For details, see the commit message of 4114156ae9.
It is mentioned in t/README, I know it is mentioned in t/README, and I did re-read the part of t/README, every time I needed to decide between $PWD and $(pwd), but I still got it wrong 50% of the time X-<.