git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Re: git equivalent to svn info?
       [not found]   ` <20080917224856.GT10360@machine.or.cz>
@ 2008-09-18  5:50     ` Junio C Hamano
  2008-09-18 16:11       ` [PATCH] make "git remote" report multiple URLs Michael J Gruber
  0 siblings, 1 reply; 4+ messages in thread
From: Junio C Hamano @ 2008-09-18  5:50 UTC (permalink / raw)
  To: public-git-users-/JYPxA39Uh5TLH3MbocFFw; +Cc: git

Petr Baudis <pasky-+ZI9xUNit7I@public.gmane.org> writes:

> On Thu, Sep 18, 2008 at 10:13:34AM +1200, Francois Marier wrote:
>> On Wed, 2008-09-17 at 14:46 -0700, skillzero-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org wrote:
>> > Is there an easy way with git to get the URL of the repository that
>> > you cloned from, similar to what svn info shows for a subversion
>> > repository? I see it's stored in [remote "origin"]->url section of
>> > the .git/config, but I was hoping for an easy-to-remember command to
>> > display it.
>> 
>> I normally use "git remote show origin"
>
> You can also get a quick overview with git remote -v.

Ah, that reminds me...

It is Ok to have more than one URL defined for a remote if you use that
remote for push, but "git remote -v" complains, like this:

    $ git remote -v
    warning: Remote builders has more than one URL
    builders        box-fc5:git/
    ko-private	m.kernel.org:git/

when I have 3 URLs (box-fc5, box-fc7 and box-fc9) for "builders" remote to
push into.

Could somebody fix this, please?

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [PATCH] make "git remote" report multiple URLs
  2008-09-18  5:50     ` git equivalent to svn info? Junio C Hamano
@ 2008-09-18 16:11       ` Michael J Gruber
  2008-09-19 20:28         ` Junio C Hamano
  0 siblings, 1 reply; 4+ messages in thread
From: Michael J Gruber @ 2008-09-18 16:11 UTC (permalink / raw)
  To: git; +Cc: Michael J Gruber

This patch makes "git remote -v" and "git remote show" report multiple URLs
rather than warn about them. Multiple URLs are OK for pushing into
multiple repos simultaneously.

Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net>
---
 builtin-remote.c |   11 +++++++----
 1 files changed, 7 insertions(+), 4 deletions(-)

This passes all tests, so I think the new output does not break anything.

diff --git a/builtin-remote.c b/builtin-remote.c
index 01945a8..ae560e7 100644
--- a/builtin-remote.c
+++ b/builtin-remote.c
@@ -652,10 +652,13 @@ static int get_one_entry(struct remote *remote, void *priv)
 {
 	struct string_list *list = priv;
 
-	string_list_append(remote->name, list)->util = remote->url_nr ?
-		(void *)remote->url[0] : NULL;
-	if (remote->url_nr > 1)
-		warning("Remote %s has more than one URL", remote->name);
+	if (remote->url_nr > 0) {
+		int i;
+
+		for (i = 0; i < remote->url_nr; i++)
+			string_list_append(remote->name, list)->util = (void *)remote->url[i];
+	} else
+		string_list_append(remote->name, list)->util = NULL;
 
 	return 0;
 }
-- 
1.6.0.2.249.g97d7f

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH] make "git remote" report multiple URLs
  2008-09-18 16:11       ` [PATCH] make "git remote" report multiple URLs Michael J Gruber
@ 2008-09-19 20:28         ` Junio C Hamano
  2008-09-22  8:57           ` [PATCH v2] " Michael J Gruber
  0 siblings, 1 reply; 4+ messages in thread
From: Junio C Hamano @ 2008-09-19 20:28 UTC (permalink / raw)
  To: Michael J Gruber; +Cc: git

Michael J Gruber <git@drmicha.warpmail.net> writes:

> This patch makes "git remote -v" and "git remote show" report multiple URLs
> rather than warn about them. Multiple URLs are OK for pushing into
> multiple repos simultaneously.
>
> Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net>
> ---

Nice.  But this makes "git remote show" to give duplicate results, which
you might want to cull.

>  builtin-remote.c |   11 +++++++----
>  1 files changed, 7 insertions(+), 4 deletions(-)
>
> This passes all tests, so I think the new output does not break anything.

Or just there is no existing tests that verify the output from this command.

> diff --git a/builtin-remote.c b/builtin-remote.c
> index 01945a8..ae560e7 100644
> --- a/builtin-remote.c
> +++ b/builtin-remote.c
> @@ -652,10 +652,13 @@ static int get_one_entry(struct remote *remote, void *priv)
>  {
>  	struct string_list *list = priv;
>  
> -	string_list_append(remote->name, list)->util = remote->url_nr ?
> -		(void *)remote->url[0] : NULL;
> -	if (remote->url_nr > 1)
> -		warning("Remote %s has more than one URL", remote->name);
> +	if (remote->url_nr > 0) {
> +		int i;
> +
> +		for (i = 0; i < remote->url_nr; i++)
> +			string_list_append(remote->name, list)->util = (void *)remote->url[i];
> +	} else
> +		string_list_append(remote->name, list)->util = NULL;
>  
>  	return 0;
>  }
> -- 
> 1.6.0.2.249.g97d7f

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [PATCH v2] make "git remote" report multiple URLs
  2008-09-19 20:28         ` Junio C Hamano
@ 2008-09-22  8:57           ` Michael J Gruber
  0 siblings, 0 replies; 4+ messages in thread
From: Michael J Gruber @ 2008-09-22  8:57 UTC (permalink / raw)
  To: git; +Cc: Michael J Gruber

This patch makes "git remote -v" and "git remote show" report multiple URLs
rather than warn about them. Multiple URLs are OK for pushing into
multiple repos simultaneously. Without "-v" each repo is shown once only.

Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net>
---
 builtin-remote.c |   23 +++++++++++++++--------
 1 files changed, 15 insertions(+), 8 deletions(-)

Change in v2: report each repo once only if "-v" is not used (i.e. URL is not shown),
as requested by JC.

JC wrote:
> MJG wrote:
>> This passes all tests, so I think the new output does not break anything.

> Or just there is no existing tests that verify the output from this command.

JC, sounds as if you're a mathematician, as well ;)

diff --git a/builtin-remote.c b/builtin-remote.c
index 01945a8..1e2edc2 100644
--- a/builtin-remote.c
+++ b/builtin-remote.c
@@ -652,10 +652,13 @@ static int get_one_entry(struct remote *remote, void *priv)
 {
 	struct string_list *list = priv;
 
-	string_list_append(remote->name, list)->util = remote->url_nr ?
-		(void *)remote->url[0] : NULL;
-	if (remote->url_nr > 1)
-		warning("Remote %s has more than one URL", remote->name);
+	if (remote->url_nr > 0) {
+		int i;
+
+		for (i = 0; i < remote->url_nr; i++)
+			string_list_append(remote->name, list)->util = (void *)remote->url[i];
+	} else
+		string_list_append(remote->name, list)->util = NULL;
 
 	return 0;
 }
@@ -671,10 +674,14 @@ static int show_all(void)
 		sort_string_list(&list);
 		for (i = 0; i < list.nr; i++) {
 			struct string_list_item *item = list.items + i;
-			printf("%s%s%s\n", item->string,
-				verbose ? "\t" : "",
-				verbose && item->util ?
-					(const char *)item->util : "");
+			if (verbose)
+				printf("%s\t%s\n", item->string,
+					item->util ? (const char *)item->util : "");
+			else {
+				if (i && !strcmp((item - 1)->string, item->string))
+					continue;
+				printf("%s\n", item->string);
+			}
 		}
 	}
 	return result;
-- 
1.6.0.2.287.g3791f

^ permalink raw reply related	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2008-09-22  8:59 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <1ed9467a-ca0d-4f9f-813d-9ff92dd7413e@s28g2000prd.googlegroups.com>
     [not found] ` <1221689614.7164.31.camel@localhost>
     [not found]   ` <20080917224856.GT10360@machine.or.cz>
2008-09-18  5:50     ` git equivalent to svn info? Junio C Hamano
2008-09-18 16:11       ` [PATCH] make "git remote" report multiple URLs Michael J Gruber
2008-09-19 20:28         ` Junio C Hamano
2008-09-22  8:57           ` [PATCH v2] " Michael J Gruber

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).