From: Junio C Hamano <gitster@pobox.com>
To: Daniel Barkalow <barkalow@iabervon.org>
Cc: git@vger.kernel.org
Subject: Re: What's cooking in git.git (Aug 2009, #05; Wed, 26)
Date: Sat, 29 Aug 2009 21:06:10 -0700 [thread overview]
Message-ID: <7vskfat07h.fsf@alter.siamese.dyndns.org> (raw)
In-Reply-To: <alpine.LNX.2.00.0908292116060.28290@iabervon.org> (Daniel Barkalow's message of "Sat\, 29 Aug 2009 21\:46\:03 -0400 \(EDT\)")
Daniel Barkalow <barkalow@iabervon.org> writes:
>> There was a discussion that suggests that the use of colon ':' before vcs
>> helper name needs to be corrected. Nothing happened since.
>
> I believe the outcome of that discussion was:
>
> - We want to keep supporting using regular location URLs that are URLs of
> git repositories (e.g., http://git.savannah.gnu.org/cgit/xboard.git),
> and we probably want to do it with a helper which runs when
> run_command() is given "remote-<scheme>". I think installing hardlinks
> in EXECPATH ended up being the best implementation here.
That is different from what I recall.
I think you said <scheme> in the above to mean that in the general URL
syntax, <scheme> refers to the token before the colon, and you would be
feeding the rest (i.e. after the colon, and for many <scheme>'s it
typically begins with //) to the scheme.
A flaw with this that was pointed out was that this conflicts with the
scp-like syntax. A remote.$name.url of foo:bar/baz could name
$HOME/bar/baz on host foo (perhaps a nickname in .ssh/config), or the
source "foo" helper recognizes with the name bar/baz.
If I recall correctly, suggestions made later in the discussion were to
use either <helper>+ or <helper>:: as the prefix to avoid this issue, and
use it to choose remote-<helper> (and I think I probably would vote for
double-colon, if only to avoid confusion with our own earlier misdesigned
syntax git+ssh://), so the canonical syntax would be:
<helper>::<whatever is fed to the helper, typicall a URL>
while we would support obvious short-hands for transports we traditionally
supported without explicit "<helper>::" prefix when we choose to eject it
from "built-in" set of transports.
E.g. http://git.savannah.gnu.org/cgit/xboard.git would be handled by curl
based walker, so if you spell it in the very canonical form, the url would
be curl::http://git.savannah.gnu.org/cgit/xboard.git, but nobody has to
use it. Instead, the transport dispatcher internally recognizes http://
and picks the curl based walker helper, which is remote-curl without any
extra hardlinks.
And from my point of view, this is what is blocking the series; and there
still is no -rc0 yet (I've been hoping to do a 1.6.5 mid September before
I leave for Japan for about a week), because I think it is pointless to do
a new release without "the ejection of curl from builtin".
> - We want to support a separate "vcs" option for cases where repositories
> in the foreign system need to be addressed through the combination of a
> bunch of options, which will be read from the configuration by the
> helper. The helper which gets run is "remote-<value of vcs option>".
> This is in pu.
After you explained this in the thread (I think for the second time), I
see no problem with this, except that I think to support this we should
notice and raise an error when we see a remote has both vcs and url,
because the only reason we would want to say "vcs", if I recall your
explanation correctly, is that such a transport does not have the concept
of URL, i.e. a well defined single string that identifies the repository.
next prev parent reply other threads:[~2009-08-30 4:06 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-08-26 23:45 What's cooking in git.git (Aug 2009, #05; Wed, 26) Junio C Hamano
2009-08-26 23:49 ` Shawn O. Pearce
2009-08-27 0:10 ` Sverre Rabbelier
2009-08-27 0:12 ` Shawn O. Pearce
2009-08-27 19:48 ` Sverre Rabbelier
2009-08-27 16:41 ` Brandon Casey
2009-08-27 17:32 ` Junio C Hamano
2009-08-27 18:02 ` Brandon Casey
2009-08-28 22:32 ` [PATCH master] t/test-lib.sh: provide a shell implementation of the 'yes' utility Brandon Casey
2009-08-30 1:46 ` What's cooking in git.git (Aug 2009, #05; Wed, 26) Daniel Barkalow
2009-08-30 4:06 ` Junio C Hamano [this message]
2009-08-30 20:31 ` Junio C Hamano
2009-08-31 17:06 ` Daniel Barkalow
2009-08-31 23:35 ` Junio C Hamano
2009-09-01 4:18 ` Daniel Barkalow
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=7vskfat07h.fsf@alter.siamese.dyndns.org \
--to=gitster@pobox.com \
--cc=barkalow@iabervon.org \
--cc=git@vger.kernel.org \
/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).