Commit 9c183a70 authored by Jeff King's avatar Jeff King Committed by Junio C Hamano

credential: convert "url" attribute into its parsed subparts

The git-credential command requires that you feed it a
broken-down credential, which means that the client needs to
parse a URL itself. Since we have our own URL-parsing
routines, we can easily allow the caller to just give us the
URL as-is, saving them some code.
Signed-off-by: default avatarJeff King <peff@peff.net>
Acked-by: default avatarMatthieu Moy <Matthieu.Moy@imag.fr>
Signed-off-by: default avatarJunio C Hamano <gitster@pobox.com>
parent 6319a2a1
......@@ -140,3 +140,15 @@ Git understands the following attributes:
`password`::
The credential's password, if we are asking it to be stored.
`url`::
When this special attribute is read by `git credential`, the
value is parsed as a URL and treated as if its constituent parts
were read (e.g., `url=https://example.com` would behave as if
`protocol=https` and `host=example.com` had been provided). This
can help callers avoid parsing URLs themselves. Note that any
components which are missing from the URL (e.g., there is no
username in the example above) will be set to empty; if you want
to provide a URL and override some attributes, provide the URL
attribute first, followed by any overrides.
......@@ -172,6 +172,8 @@ int credential_read(struct credential *c, FILE *fp)
} else if (!strcmp(key, "path")) {
free(c->path);
c->path = xstrdup(value);
} else if (!strcmp(key, "url")) {
credential_from_url(c, value);
}
/*
* Ignore other lines; we don't know what they mean, but
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment