From: Junio C Hamano <gitster@pobox.com>
To: "Tao Klerks via GitGitGadget" <gitgitgadget@gmail.com>
Cc: git@vger.kernel.org, "Ævar Arnfjörð Bjarmason" <avarab@gmail.com>,
"Tao Klerks" <tao@klerks.biz>, "Glen Choo" <chooglen@google.com>
Subject: Re: [PATCH v6] tracking branches: add advice to ambiguous refspec error
Date: Thu, 31 Mar 2022 12:32:52 -0700 [thread overview]
Message-ID: <xmqqpmm13okb.fsf@gitster.g> (raw)
In-Reply-To: <pull.1183.v6.git.1648742485887.gitgitgadget@gmail.com> (Tao Klerks via GitGitGadget's message of "Thu, 31 Mar 2022 16:01:25 +0000")
"Tao Klerks via GitGitGadget" <gitgitgadget@gmail.com> writes:
> if (!remote_find_tracking(remote, &tracking->spec)) {
> - if (++tracking->matches == 1) {
> + switch (++tracking->matches) {
> + case 1:
> string_list_append(tracking->srcs, tracking->spec.src);
> tracking->remote = remote->name;
> - } else {
> + break;
> + case 2:
> + /* there are at least two remotes; backfill the first one */
> + string_list_append(&ftb->ambiguous_remotes, tracking->spec.src);
> + /* fall through */
> + default:
> + string_list_append(&ftb->ambiguous_remotes, remote->name);
> free(tracking->spec.src);
> string_list_clear(tracking->srcs, 0);
> + break;
Just to sanity check this part,
- During the first iteration, we append tracking->spec.src to
tracking->srcs, and set tracking->remote to remote->name;
- In later iterations, we do not want to touch tracking->srcs, and
want to collect remote->name.
And "backfill" assumes that tracking->spec.src at that point in the
second iteration is the same as what we got in remote->name in the
first round. If that were a correct assumption, then it is curious
that the first iteration uses tracking->spec.src and remote->name
separately for different purposes, which makes me want to double
check if the assumption is indeed correct.
If it were tracking->remote (which was assigned the value of
remote->name during the first iteration) that is used to backfill
before we append remote->name in the second iteration, I wouldn't
find it "curious", but the use of tracking->spec.src there makes me
feel confused.
Thanks.
next prev parent reply other threads:[~2022-03-31 19:32 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-03-21 10:23 [PATCH] tracking branches: add advice to ambiguous refspec error Tao Klerks via GitGitGadget
2022-03-21 14:11 ` Ævar Arnfjörð Bjarmason
2022-03-22 9:09 ` Tao Klerks
2022-03-22 9:18 ` [PATCH v2] RFC: " Tao Klerks via GitGitGadget
2022-03-22 10:04 ` Ævar Arnfjörð Bjarmason
2022-03-28 6:51 ` [PATCH v3] " Tao Klerks via GitGitGadget
2022-03-28 16:23 ` Junio C Hamano
2022-03-28 17:12 ` Glen Choo
2022-03-28 17:23 ` Junio C Hamano
2022-03-28 18:02 ` Tao Klerks
2022-03-28 18:50 ` Ævar Arnfjörð Bjarmason
2022-03-28 20:32 ` Junio C Hamano
2022-03-28 20:27 ` Junio C Hamano
2022-03-29 11:26 ` Tao Klerks
2022-03-29 11:26 ` [PATCH v4] " Tao Klerks via GitGitGadget
2022-03-29 11:31 ` Tao Klerks
2022-03-29 15:49 ` Junio C Hamano
2022-03-30 4:17 ` Tao Klerks
2022-03-30 7:20 ` [PATCH v5] " Tao Klerks via GitGitGadget
2022-03-30 13:19 ` Ævar Arnfjörð Bjarmason
2022-03-30 14:23 ` Tao Klerks
2022-03-30 15:18 ` Tao Klerks
2022-03-30 17:14 ` Ævar Arnfjörð Bjarmason
2022-03-30 20:37 ` Junio C Hamano
2022-03-30 21:09 ` Ævar Arnfjörð Bjarmason
2022-03-30 22:07 ` Junio C Hamano
2022-03-30 22:51 ` Ævar Arnfjörð Bjarmason
2022-03-31 16:01 ` [PATCH v6] " Tao Klerks via GitGitGadget
2022-03-31 19:32 ` Junio C Hamano [this message]
2022-03-31 23:57 ` Glen Choo
2022-04-01 4:30 ` Tao Klerks
2022-04-01 16:41 ` Glen Choo
2022-03-31 19:33 ` Junio C Hamano
2022-04-01 6:05 ` [PATCH v7] " Tao Klerks via GitGitGadget
2022-04-01 16:53 ` Glen Choo
2022-04-01 19:57 ` 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=xmqqpmm13okb.fsf@gitster.g \
--to=gitster@pobox.com \
--cc=avarab@gmail.com \
--cc=chooglen@google.com \
--cc=git@vger.kernel.org \
--cc=gitgitgadget@gmail.com \
--cc=tao@klerks.biz \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.