Skip to content

Commit

Permalink
config: document remote.*.url/pushurl interaction
Browse files Browse the repository at this point in the history
The documentation for these keys gives a very terse definition and
points you to the fetch/push manpages. But from reading those pages it
was not at all obvious to me that:

  - these are keys that can be defined multiple times with meaningful
    behavior (especially remote.*.url)

  - the way that pushurl overrides url (the git-push page does mention
    that "pushurl defaults to url", but it is not immediately clear what
    a multi-valued url would do in that situation).

Let's try to summarize the current behavior.

Signed-off-by: Jeff King <[email protected]>
Signed-off-by: Junio C Hamano <[email protected]>
  • Loading branch information
peff authored and gitster committed Jun 14, 2024
1 parent b68118d commit bd1b88d
Showing 1 changed file with 7 additions and 1 deletion.
8 changes: 7 additions & 1 deletion Documentation/config/remote.txt
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,16 @@ remote.pushDefault::

remote.<name>.url::
The URL of a remote repository. See linkgit:git-fetch[1] or
linkgit:git-push[1].
linkgit:git-push[1]. A configured remote can have multiple URLs;
in this case the first is used for fetching, and all are used
for pushing (assuming no `remote.<name>.pushurl` is defined).

remote.<name>.pushurl::
The push URL of a remote repository. See linkgit:git-push[1].
If a `pushurl` option is present in a configured remote, it
is used for pushing instead of `remote.<name>.url`. A configured
remote can have multiple push URLs; in this case a push goes to
all of them.

remote.<name>.proxy::
For remotes that require curl (http, https and ftp), the URL to
Expand Down

0 comments on commit bd1b88d

Please sign in to comment.