t/perf: use $MODERN_GIT for all repo-copying steps
authorJeff King <peff@peff.net>
Fri, 3 Mar 2017 07:14:03 +0000 (02:14 -0500)
committerJunio C Hamano <gitster@pobox.com>
Fri, 3 Mar 2017 18:55:26 +0000 (10:55 -0800)
commit83d4a409d370db56b87ce2a2e105f717863878da
tree829394268884c9ee1e6ba8582518ce579fcbc9b4
parent67f2825174882ae7d4e252f48fc1ce7f780196fb
t/perf: use $MODERN_GIT for all repo-copying steps

Since 1a0962dee (t/perf: fix regression in testing older
versions of git, 2016-06-22), we point "$MODERN_GIT" to a
copy of git that matches the t/perf script itself, and which
can be used for tasks outside of the actual timings. This is
needed because the setup done by perf scripts keeps moving
forward in time, and may use features that the older
versions of git we are testing do not have.

That commit used $MODERN_GIT to fix a case where we relied
on the relatively recent --git-path option. But if you go
back further still, there are more problems.

Since 7501b5921 (perf: make the tests work in worktrees,
2016-05-13), we use "git -C", but versions of git older than
44e1e4d67 (git: run in a directory given with -C option,
2013-09-09) don't know about "-C". So testing an old version
of git with a new version of t/perf will fail the setup
step.

We can fix this by using $MODERN_GIT during the setup;
there's no need to use the antique version, since it doesn't
affect the timings. Likewise, we'll adjust the "init"
invocation; antique versions of git called this "init-db".

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
t/perf/perf-lib.sh