From: "Philippe Blain via GitGitGadget" <gitgitgadget@gmail.com>
To: git@vger.kernel.org
Cc: Victoria Dye <vdye@github.com>,
Neeraj Singh <neerajsi@microsoft.com>,
Philippe Blain <levraiphilippeblain@gmail.com>,
Philippe Blain <levraiphilippeblain@gmail.com>
Subject: [PATCH 2/2] p9210: fix 'scalar clone' when running from a detached HEAD
Date: Fri, 28 Mar 2025 17:07:49 +0000 [thread overview]
Message-ID: <1092c32609f249839453052ca802cb10256cb48f.1743181669.git.gitgitgadget@gmail.com> (raw)
In-Reply-To: <pull.1936.git.git.1743181669.gitgitgadget@gmail.com>
From: Philippe Blain <levraiphilippeblain@gmail.com>
In p9210-scalar-clone.sh, we test using 'scalar clone' to clone
$GIT_PERF_LARGE_REPO (copied locally as 'to-clone'), which defaults to
the git.git checkout we are running the test from.
When --branch is not specified (as in this test), 'scalar clone' tries
to get the default branch of the remote repository by parsing the output
of 'git ls-remote --symref $URL HEAD', as implemented in
scalar.c:remote_default_branch. When the git.git checkout we are running
the test from is in detached HEAD, this fails and we fall back to using
the name of the currently checked out branch in the newly initialized
repository, which in this case is the value returned earlier in
cmd_clone by repo_default_branch_name.
We then invoke 'git checkout -t origin/$branch', with $branch being the
name we got from remote_default_branch. This invocation fails if
'$branch' does not exist as a branch in the current git.git checkout.
Fix this by creating a local branch in 'to-clone' in the setup test
"enable server-side partial clone", making sure to use '-B' in case a
branch named 'test-branch' already exists.
Signed-off-by: Philippe Blain <levraiphilippeblain@gmail.com>
---
t/perf/p9210-scalar.sh | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/t/perf/p9210-scalar.sh b/t/perf/p9210-scalar.sh
index 265f7cd1fe2..56b075e906e 100755
--- a/t/perf/p9210-scalar.sh
+++ b/t/perf/p9210-scalar.sh
@@ -7,7 +7,8 @@ test_perf_large_repo "$TRASH_DIRECTORY/to-clone"
test_expect_success 'enable server-side partial clone' '
git -C to-clone config uploadpack.allowFilter true &&
- git -C to-clone config uploadpack.allowAnySHA1InWant true
+ git -C to-clone config uploadpack.allowAnySHA1InWant true &&
+ git -C to-clone checkout -B test-branch
'
test_perf 'scalar clone' '
--
gitgitgadget
next prev parent reply other threads:[~2025-03-28 17:07 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-03-28 17:07 [PATCH 0/2] Two perf test fixes Philippe Blain via GitGitGadget
2025-03-28 17:07 ` [PATCH 1/2] p7821: fix test_perf invocation for prereqs Philippe Blain via GitGitGadget
2025-03-31 7:27 ` Patrick Steinhardt
2025-04-13 19:00 ` Philippe Blain
2025-03-28 17:07 ` Philippe Blain via GitGitGadget [this message]
2025-03-31 7:27 ` [PATCH 2/2] p9210: fix 'scalar clone' when running from a detached HEAD Patrick Steinhardt
2025-04-12 18:15 ` [PATCH v2 0/3] Two perf test fixes Philippe Blain via GitGitGadget
2025-04-12 18:15 ` [PATCH v2 1/3] p7821: fix test_perf invocation for prereqs Philippe Blain via GitGitGadget
2025-04-12 18:15 ` [PATCH v2 2/3] p9210: fix 'scalar clone' when running from a detached HEAD Philippe Blain via GitGitGadget
2025-04-12 18:15 ` [PATCH v2 3/3] p7821: fix instructions for testing with threads Philippe Blain via GitGitGadget
2025-04-14 21:48 ` Junio C Hamano
2025-04-13 2:50 ` [PATCH v2 0/3] Two perf test fixes Philippe Blain
2025-04-14 16:04 ` Junio C Hamano
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1092c32609f249839453052ca802cb10256cb48f.1743181669.git.gitgitgadget@gmail.com \
--to=gitgitgadget@gmail.com \
--cc=git@vger.kernel.org \
--cc=levraiphilippeblain@gmail.com \
--cc=neerajsi@microsoft.com \
--cc=vdye@github.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).