make "git remote" report multiple URLs
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> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
1f5a892e52
commit
7d20e2189e
@ -652,10 +652,13 @@ static int get_one_entry(struct remote *remote, void *priv)
|
|||||||
{
|
{
|
||||||
struct string_list *list = priv;
|
struct string_list *list = priv;
|
||||||
|
|
||||||
string_list_append(remote->name, list)->util = remote->url_nr ?
|
if (remote->url_nr > 0) {
|
||||||
(void *)remote->url[0] : NULL;
|
int i;
|
||||||
if (remote->url_nr > 1)
|
|
||||||
warning("Remote %s has more than one URL", remote->name);
|
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;
|
return 0;
|
||||||
}
|
}
|
||||||
@ -671,10 +674,14 @@ static int show_all(void)
|
|||||||
sort_string_list(&list);
|
sort_string_list(&list);
|
||||||
for (i = 0; i < list.nr; i++) {
|
for (i = 0; i < list.nr; i++) {
|
||||||
struct string_list_item *item = list.items + i;
|
struct string_list_item *item = list.items + i;
|
||||||
printf("%s%s%s\n", item->string,
|
if (verbose)
|
||||||
verbose ? "\t" : "",
|
printf("%s\t%s\n", item->string,
|
||||||
verbose && item->util ?
|
item->util ? (const char *)item->util : "");
|
||||||
(const char *)item->util : "");
|
else {
|
||||||
|
if (i && !strcmp((item - 1)->string, item->string))
|
||||||
|
continue;
|
||||||
|
printf("%s\n", item->string);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return result;
|
return result;
|
||||||
|
Loading…
Reference in New Issue
Block a user