From: Junio C Hamano <gitster@pobox.com>
To: Paolo Bonzini <bonzini@gnu.org>
Cc: git@vger.kernel.org, spearce@spearce.org, gitster@pobox.com,
peff@peff.net, johannes.schindelin@gmx.de, srb@cuci.nl
Subject: Re: [PATCH 1/7] add special "matching refs" refspec
Date: Wed, 30 Apr 2008 02:23:53 -0700 [thread overview]
Message-ID: <7vfxt31ys6.fsf@gitster.siamese.dyndns.org> (raw)
In-Reply-To: af57d23aca6137c1ae7702027ce3742433840872.1209391614.git.bonzini@gnu.org
Paolo Bonzini <bonzini@gnu.org> writes:
> @@ -937,13 +945,23 @@ static const struct refspec *check_pattern_match(const struct refspec *rs,
> const struct ref *src)
> {
> int i;
> + int matching_refs = -1;
> for (i = 0; i < rs_nr; i++) {
> + if (rs[i].matching &&
> + (matching_refs == -1 || rs[i].force)) {
> + matching_refs = i;
> + continue;
> + }
> +
> if (rs[i].pattern &&
> !prefixcmp(src->name, rs[i].src) &&
> src->name[strlen(rs[i].src)] == '/')
> return rs + i;
> }
> - return NULL;
> + if (matching_refs != -1)
> + return rs + matching_refs;
> + else
> + return NULL;
> }
It is probably better to document that you would force if you have both
"+:" and ":" for the same remote, even though I am not sure if allowing
that (instead of diagnosing it as an error) is the right thing to do.
Is it an error to have both ":" and "some:other" refspecs for the same
remote? If so who makes the check?
Otherwise this patch seems to be very cleanly done. Especially I like how
the updated match_refs() looks.
next prev parent reply other threads:[~2008-04-30 9:25 UTC|newest]
Thread overview: 74+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-04-26 7:31 [PATCH resend] make "git push" update origin and mirrors, "git push --mirror" update mirrors Paolo Bonzini
2008-04-26 17:01 ` Shawn O. Pearce
2008-04-26 17:46 ` Junio C Hamano
2008-04-27 4:30 ` Shawn O. Pearce
2008-04-27 4:40 ` Shawn O. Pearce
2008-04-27 5:23 ` Junio C Hamano
2008-04-27 17:34 ` Shawn O. Pearce
2008-04-27 20:13 ` Junio C Hamano
2008-04-27 20:22 ` Paolo Bonzini
2008-04-28 1:26 ` Jeff King
2008-04-28 5:07 ` Paolo Bonzini
2008-04-28 9:09 ` Jeff King
2008-04-28 9:11 ` Jeff King
2008-04-28 9:19 ` Paolo Bonzini
2008-04-28 10:33 ` Johannes Schindelin
2008-04-28 11:24 ` Paolo Bonzini
2008-04-28 11:57 ` Johannes Schindelin
2008-04-28 3:32 ` Shawn O. Pearce
2008-04-28 5:03 ` Paolo Bonzini
2008-04-28 6:08 ` Stephen R. van den Berg
2008-04-28 1:21 ` Jeff King
2008-04-27 9:03 ` Paolo Bonzini
2008-04-27 7:23 ` Paolo Bonzini
2008-04-28 15:32 ` [PATCH 0/7] limit the usage of the default remote "origin" to the minimum Paolo Bonzini
2008-04-28 15:32 ` [PATCH 1/7] add special "matching refs" refspec Paolo Bonzini
2008-04-28 15:32 ` [PATCH 2/7] add push line in git-clone Paolo Bonzini
2008-04-28 15:32 ` [PATCH 3/7] Add a --push option to "git-remote add" Paolo Bonzini
2008-04-28 15:32 ` [PATCH 4/7] make "git push" update all push repositories Paolo Bonzini
2008-04-28 15:32 ` [PATCH 5/7] don't rely on zero-argument "git fetch" from within git pull Paolo Bonzini
2008-04-28 15:32 ` [PATCH 6/7] warn on "git pull" without a given branch.<name>.remote value Paolo Bonzini
2008-04-28 15:32 ` [PATCH 7/7] make "git fetch" update all fetch repositories Paolo Bonzini
2008-04-28 18:10 ` Alex Riesen
2008-04-28 18:19 ` Paolo Bonzini
2008-04-28 21:33 ` Alex Riesen
2008-04-29 4:52 ` Paolo Bonzini
2008-04-29 5:38 ` Alex Riesen
2008-04-29 6:05 ` Andreas Ericsson
2008-04-29 6:55 ` Paolo Bonzini
2008-04-29 16:13 ` Johannes Schindelin
2008-04-29 16:40 ` Paolo Bonzini
2008-04-29 20:34 ` Alex Riesen
2008-04-29 6:50 ` Paolo Bonzini
2008-04-29 7:16 ` Andreas Ericsson
2008-04-29 7:57 ` Paolo Bonzini
2008-04-29 8:48 ` Andreas Ericsson
2008-04-29 9:02 ` Paolo Bonzini
2008-04-29 21:08 ` しらいしななこ
[not found] ` <200804292108.m3TL8moV011790@mi1.bluebottle.com>
2008-04-29 21:21 ` Paolo Bonzini
2008-04-29 22:21 ` Johannes Schindelin
2008-04-29 20:44 ` Alex Riesen
2008-04-29 21:15 ` Paolo Bonzini
2008-04-29 21:33 ` Alex Riesen
2008-04-29 21:41 ` Paolo Bonzini
2008-04-29 21:53 ` Alex Riesen
2008-04-29 22:26 ` Johannes Schindelin
2008-04-29 23:02 ` Jeff King
2008-04-29 23:17 ` Junio C Hamano
2008-04-30 5:28 ` Paolo Bonzini
2008-04-29 21:39 ` Johannes Schindelin
2008-04-29 20:24 ` Alex Riesen
2008-05-01 6:28 ` [PATCH 2/7] add push line in git-clone Junio C Hamano
2008-05-06 8:37 ` Paolo Bonzini
2008-05-14 15:20 ` Paolo Bonzini
2008-05-14 18:16 ` Junio C Hamano
2008-05-14 19:07 ` Paolo Bonzini
2008-05-14 19:23 ` Junio C Hamano
2008-05-14 19:40 ` Paolo Bonzini
2008-04-30 9:23 ` Junio C Hamano [this message]
2008-04-30 9:35 ` [PATCH 1/7] add special "matching refs" refspec Paolo Bonzini
2008-04-29 19:35 ` [PATCH 0/7] limit the usage of the default remote "origin" to the minimum Jeff King
2008-04-29 21:42 ` Alex Riesen
2008-04-29 21:56 ` Junio C Hamano
2008-04-29 23:12 ` Jeff King
2008-04-30 5:24 ` Paolo Bonzini
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=7vfxt31ys6.fsf@gitster.siamese.dyndns.org \
--to=gitster@pobox.com \
--cc=bonzini@gnu.org \
--cc=git@vger.kernel.org \
--cc=johannes.schindelin@gmx.de \
--cc=peff@peff.net \
--cc=spearce@spearce.org \
--cc=srb@cuci.nl \
/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).