From: Sverre Rabbelier <srabbelier@gmail.com>
To: Git List <git@vger.kernel.org>,
Johannes Schindelin <Johannes.Schindelin@gmx.de>,
Daniel Barkalow <barkalow@iabervon.org>,
Johan Herland <johan@herland.net>
Cc: Johannes Schindelin <johannes.schindelin@gmx.de>,
Sverre Rabbelier <srabbelier@gmail.com>
Subject: [PATCH 09/19] Finally make remote helper support useful
Date: Thu, 29 Oct 2009 11:01:17 -0700 [thread overview]
Message-ID: <1256839287-19016-10-git-send-email-srabbelier@gmail.com> (raw)
In-Reply-To: <1256839287-19016-1-git-send-email-srabbelier@gmail.com>
From: Johannes Schindelin <johannes.schindelin@gmx.de>
The common case for remote helpers will be to import some repository which
can be specified by a single URL. Rather than supporting those who say
that Git is really complicated, let's be nice to users so that they will
be able to say:
git clone hg::https://soc.googlecode.com/hg/ soc
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Sverre Rabbelier <srabbelier@gmail.com>
---
I decided to not allow 'hg+https' format, since clone does
not deal well with that syntax (it checks to see whether
there is a ':' in the url or not).
transport.c | 10 ++++++++++
1 files changed, 10 insertions(+), 0 deletions(-)
diff --git a/transport.c b/transport.c
index 741a3a7..e6a00b2 100644
--- a/transport.c
+++ b/transport.c
@@ -818,6 +818,16 @@ struct transport *transport_get(struct remote *remote, const char *url)
url = remote->url[0];
ret->url = url;
+ /* maybe it is a foreign URL? */
+ if (url) {
+ const char *p = url;
+
+ while (isalnum(*p))
+ p++;
+ if (!prefixcmp(p, "::"))
+ remote->foreign_vcs = xstrndup(url, p - url);
+ }
+
if (remote && remote->foreign_vcs) {
transport_helper_init(ret, remote->foreign_vcs);
return ret;
--
1.6.5.2.291.gf76a3
next prev parent reply other threads:[~2009-10-29 18:02 UTC|newest]
Thread overview: 43+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-10-29 18:01 [PATCH 0/19] Reroll of the remote-vcs-helper series Sverre Rabbelier
2009-10-29 18:01 ` [PATCH 01/19] Use a function to determine whether a remote is valid Sverre Rabbelier
2009-10-29 18:01 ` [PATCH 02/19] Allow fetch to modify refs Sverre Rabbelier
2009-10-30 5:56 ` Daniel Barkalow
2009-10-30 12:22 ` Sverre Rabbelier
2009-10-30 15:16 ` Daniel Barkalow
2009-10-30 21:24 ` Sverre Rabbelier
2009-10-29 18:01 ` [UNSTABLE PATCH 03/19] Allow programs to not depend on remotes having urls Sverre Rabbelier
2009-10-30 6:02 ` Daniel Barkalow
2009-10-30 12:24 ` Sverre Rabbelier
2009-10-29 18:01 ` [PATCH 04/19] Add a config option for remotes to specify a foreign vcs Sverre Rabbelier
2009-10-29 18:01 ` [PATCH 05/19] Add support for "import" helper command Sverre Rabbelier
2009-10-29 18:01 ` [RFC PATCH 06/19] Factor ref updating out of fetch_with_import Sverre Rabbelier
2009-10-30 7:10 ` Daniel Barkalow
2009-10-30 12:57 ` Sverre Rabbelier
2009-10-30 16:04 ` Daniel Barkalow
2009-11-02 1:33 ` Sverre Rabbelier
2009-11-02 3:16 ` Daniel Barkalow
2009-11-02 15:12 ` Sverre Rabbelier
2009-11-02 16:36 ` Daniel Barkalow
2009-10-29 18:01 ` [PATCH 07/19] Allow helpers to report in "list" command that the ref is unchanged Sverre Rabbelier
2009-10-29 18:01 ` [PATCH 08/19] Fix memory leak in helper method for disconnect Sverre Rabbelier
2009-10-29 18:01 ` Sverre Rabbelier [this message]
2009-10-29 18:01 ` [PATCH 10/19] Allow helpers to request marks for fast-import Sverre Rabbelier
2009-10-30 8:21 ` Johan Herland
2009-10-30 12:26 ` Sverre Rabbelier
2009-10-31 12:04 ` Johan Herland
2009-10-31 16:19 ` Sverre Rabbelier
2009-10-29 18:01 ` [PATCH 11/19] Basic build infrastructure for Python scripts Sverre Rabbelier
2009-10-29 18:01 ` [PATCH 12/19] 1/2: Add Python support library for CVS remote helper Sverre Rabbelier
2009-10-30 8:33 ` Johan Herland
2009-10-30 12:27 ` Sverre Rabbelier
2009-10-29 18:01 ` [PATCH 13/19] 2/2: " Sverre Rabbelier
2009-10-29 18:01 ` [PATCH 14/19] git-remote-cvs: Remote helper program for CVS repositories Sverre Rabbelier
2009-10-29 18:01 ` [PATCH 15/19] Add simple selftests of git-remote-cvs functionality Sverre Rabbelier
2009-10-29 18:01 ` [PATCH 16/19] Fix the Makefile-generated path to the git_remote_cvs package in git-remote-cvs Sverre Rabbelier
2009-10-29 18:01 ` [PATCH 17/19] More fixes to the git-remote-cvs installation procedure Sverre Rabbelier
2009-10-29 18:01 ` [PATCH 18/19] Refactor git_remote_cvs to a more generic git_remote_helpers Sverre Rabbelier
2009-10-30 8:42 ` Johan Herland
2009-10-30 12:29 ` Sverre Rabbelier
2009-10-29 18:01 ` [PATCH 19/19] .gitignore: add git-remote-cvs Sverre Rabbelier
2009-10-29 18:05 ` Shawn O. Pearce
2009-10-29 18:08 ` Sverre Rabbelier
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=1256839287-19016-10-git-send-email-srabbelier@gmail.com \
--to=srabbelier@gmail.com \
--cc=Johannes.Schindelin@gmx.de \
--cc=barkalow@iabervon.org \
--cc=git@vger.kernel.org \
--cc=johan@herland.net \
/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).