Hi Peff, On Wed, 14 Nov 2018, Jeff King wrote: > On Mon, Nov 12, 2018 at 05:48:37AM -0800, Johannes Schindelin via GitGitGadget wrote: > > > diff --git a/t/test-lib.sh b/t/test-lib.sh > > index 832ede5099..1ea20dc2dc 100644 > > --- a/t/test-lib.sh > > +++ b/t/test-lib.sh > > @@ -51,7 +51,7 @@ export LSAN_OPTIONS > > > > ################################################################ > > # It appears that people try to run tests without building... > > -"$GIT_BUILD_DIR/git" >/dev/null > > +test -n "$GIT_TEST_INSTALLED" || "$GIT_BUILD_DIR/git" >/dev/null || > > if test $? != 1 > > then > > echo >&2 'error: you do not seem to have built git yet.' > > The original runs the command independently and then checks $?. Your > replacement chains the ||. I think it works, because the only case that > is different is if running git returns 0 (in which case we currently > complain, but the new code would quietly accept this). > > That should never happen, but if it does we'd probably want to complain. > And it's pretty subtle all around. Maybe this would be a bit clearer: > > if test -n "$GIT_TEST_INSTALLED" > then > : assume installed git is OK > else > "$GIT_BUILD_DIR/git" >/dev/null > if test $? != 1 > then > ... die ... > fi > fi > > Though arguably we should be checking that there is a git in our path in > the first instance. So maybe: > > if test -n "$GIT_TEST_INSTALLED" > "$GIT_TEST_INSTALLED/git" >/dev/null > else > "$GIT_BUILD_DIR/git" >/dev/null > fi > if test $? != 1 ... You're right. I did it using `"${GIT_TEST_INSTALLED:-$GIT_BUILD_DIR}/git"` and I also adjust the error message now. Will be fixed in the next iteration, Dscho > > -Peff >