Re: [PATCH 2/5] tests: respect GIT_TEST_INSTALLED when initializing repositories
- From
Johannes Schindelin <johannes.schindelin@gmx.de>
- Date
- Nov 14, 2018, 13:16 UTC
- Message-ID
- <nycvar.QRO.7.76.6.1811141413170.39@tvgsbejvaqbjf.bet>
- In-Reply-To
- <xmqqin10p8aq.fsf@gitster-ct.c.googlers.com>
Hi Junio,
On Wed, 14 Nov 2018, Junio C Hamano wrote:
Show 12 quoted lines
> "Johannes Schindelin via GitGitGadget" <gitgitgadget@gmail.com> > writes: > > > From: Johannes Schindelin <johannes.schindelin@gmx.de> > > > > It really makes very, very little sense to use a different git > > executable than the one the caller indicated via setting the environment > > variable GIT_TEST_INSTALLED. > > Makes perfect sense. Shouldn't we be asking where the template > directory of the installed version is and using it instead of the > freshly built one, no?
It would make sense, but we don't know how to get that information, do we?
$ git grep DEFAULT_GIT_TEMPLATE_DIR Makefile: -DDEFAULT_GIT_TEMPLATE_DIR='"$(template_dir_SQ)"' builtin/init-db.c:#ifndef DEFAULT_GIT_TEMPLATE_DIR builtin/init-db.c:#define DEFAULT_GIT_TEMPLATE_DIR "/usr/share/git-core/templates" builtin/init-db.c: template_dir = to_free = system_path(DEFAULT_GIT_TEMPLATE_DIR); contrib/vscode/init.sh: '-DDEFAULT_GIT_TEMPLATE_DIR="$(template_dir_SQ)"' \
In other words, the Makefile defines the DEFAULT_GIT_TEMPLATE_DIR, and the only user in the code is init-db.c which uses it in copy_templates().
And changing the code *now* to let us query Git where it thinks its templates should be won't work, as this patch is about using the installed Git (at whatever pre-compiled version that might be).
Ciao, Dscho
Show 21 quoted lines
> >
> > Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
> > ---
> > t/test-lib-functions.sh | 3 ++-
> > 1 file changed, 2 insertions(+), 1 deletion(-)
> >
> > diff --git a/t/test-lib-functions.sh b/t/test-lib-functions.sh
> > index 78d8c3783b..801cc9b2ef 100644
> > --- a/t/test-lib-functions.sh
> > +++ b/t/test-lib-functions.sh
> > @@ -900,7 +900,8 @@ test_create_repo () {
> > mkdir -p "$repo"
> > (
> > cd "$repo" || error "Cannot setup test environment"
> > - "$GIT_EXEC_PATH/git-init" "--template=$GIT_BUILD_DIR/templates/blt/" >&3 2>&4 ||
> > + "${GIT_TEST_INSTALLED:-$GIT_EXEC_PATH}/git" init \
> > + "--template=$GIT_BUILD_DIR/templates/blt/" >&3 2>&4 ||
> > error "cannot run git init -- have you built things yet?"
> > mv .git/hooks .git/hooks-disabled
> > ) || exit
>