All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Nguyễn Thái Ngọc Duy" <pclouds@gmail.com>
To: git@vger.kernel.org
Cc: "Junio C Hamano" <gitster@pobox.com>,
	"Nguyễn Thái Ngọc Duy" <pclouds@gmail.com>
Subject: [PATCH 35/78] config.txt: move http.* to a separate file
Date: Sat, 27 Oct 2018 08:23:08 +0200	[thread overview]
Message-ID: <20181027062351.30446-36-pclouds@gmail.com> (raw)
In-Reply-To: <20181027062351.30446-1-pclouds@gmail.com>

Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
---
 Documentation/config.txt      | 272 +---------------------------------
 Documentation/config/http.txt | 271 +++++++++++++++++++++++++++++++++
 2 files changed, 272 insertions(+), 271 deletions(-)
 create mode 100644 Documentation/config/http.txt

diff --git a/Documentation/config.txt b/Documentation/config.txt
index 60c2204fb4..11194e1851 100644
--- a/Documentation/config.txt
+++ b/Documentation/config.txt
@@ -349,277 +349,7 @@ include::config/guitool.txt[]
 
 include::config/help.txt[]
 
-http.proxy::
-	Override the HTTP proxy, normally configured using the 'http_proxy',
-	'https_proxy', and 'all_proxy' environment variables (see `curl(1)`). In
-	addition to the syntax understood by curl, it is possible to specify a
-	proxy string with a user name but no password, in which case git will
-	attempt to acquire one in the same way it does for other credentials. See
-	linkgit:gitcredentials[7] for more information. The syntax thus is
-	'[protocol://][user[:password]@]proxyhost[:port]'. This can be overridden
-	on a per-remote basis; see remote.<name>.proxy
-
-http.proxyAuthMethod::
-	Set the method with which to authenticate against the HTTP proxy. This
-	only takes effect if the configured proxy string contains a user name part
-	(i.e. is of the form 'user@host' or 'user@host:port'). This can be
-	overridden on a per-remote basis; see `remote.<name>.proxyAuthMethod`.
-	Both can be overridden by the `GIT_HTTP_PROXY_AUTHMETHOD` environment
-	variable.  Possible values are:
-+
---
-* `anyauth` - Automatically pick a suitable authentication method. It is
-  assumed that the proxy answers an unauthenticated request with a 407
-  status code and one or more Proxy-authenticate headers with supported
-  authentication methods. This is the default.
-* `basic` - HTTP Basic authentication
-* `digest` - HTTP Digest authentication; this prevents the password from being
-  transmitted to the proxy in clear text
-* `negotiate` - GSS-Negotiate authentication (compare the --negotiate option
-  of `curl(1)`)
-* `ntlm` - NTLM authentication (compare the --ntlm option of `curl(1)`)
---
-
-http.emptyAuth::
-	Attempt authentication without seeking a username or password.  This
-	can be used to attempt GSS-Negotiate authentication without specifying
-	a username in the URL, as libcurl normally requires a username for
-	authentication.
-
-http.delegation::
-	Control GSSAPI credential delegation. The delegation is disabled
-	by default in libcurl since version 7.21.7. Set parameter to tell
-	the server what it is allowed to delegate when it comes to user
-	credentials. Used with GSS/kerberos. Possible values are:
-+
---
-* `none` - Don't allow any delegation.
-* `policy` - Delegates if and only if the OK-AS-DELEGATE flag is set in the
-  Kerberos service ticket, which is a matter of realm policy.
-* `always` - Unconditionally allow the server to delegate.
---
-
-
-http.extraHeader::
-	Pass an additional HTTP header when communicating with a server.  If
-	more than one such entry exists, all of them are added as extra
-	headers.  To allow overriding the settings inherited from the system
-	config, an empty value will reset the extra headers to the empty list.
-
-http.cookieFile::
-	The pathname of a file containing previously stored cookie lines,
-	which should be used
-	in the Git http session, if they match the server. The file format
-	of the file to read cookies from should be plain HTTP headers or
-	the Netscape/Mozilla cookie file format (see `curl(1)`).
-	NOTE that the file specified with http.cookieFile is used only as
-	input unless http.saveCookies is set.
-
-http.saveCookies::
-	If set, store cookies received during requests to the file specified by
-	http.cookieFile. Has no effect if http.cookieFile is unset.
-
-http.sslVersion::
-	The SSL version to use when negotiating an SSL connection, if you
-	want to force the default.  The available and default version
-	depend on whether libcurl was built against NSS or OpenSSL and the
-	particular configuration of the crypto library in use. Internally
-	this sets the 'CURLOPT_SSL_VERSION' option; see the libcurl
-	documentation for more details on the format of this option and
-	for the ssl version supported. Actually the possible values of
-	this option are:
-
-	- sslv2
-	- sslv3
-	- tlsv1
-	- tlsv1.0
-	- tlsv1.1
-	- tlsv1.2
-	- tlsv1.3
-
-+
-Can be overridden by the `GIT_SSL_VERSION` environment variable.
-To force git to use libcurl's default ssl version and ignore any
-explicit http.sslversion option, set `GIT_SSL_VERSION` to the
-empty string.
-
-http.sslCipherList::
-  A list of SSL ciphers to use when negotiating an SSL connection.
-  The available ciphers depend on whether libcurl was built against
-  NSS or OpenSSL and the particular configuration of the crypto
-  library in use.  Internally this sets the 'CURLOPT_SSL_CIPHER_LIST'
-  option; see the libcurl documentation for more details on the format
-  of this list.
-+
-Can be overridden by the `GIT_SSL_CIPHER_LIST` environment variable.
-To force git to use libcurl's default cipher list and ignore any
-explicit http.sslCipherList option, set `GIT_SSL_CIPHER_LIST` to the
-empty string.
-
-http.sslVerify::
-	Whether to verify the SSL certificate when fetching or pushing
-	over HTTPS. Defaults to true. Can be overridden by the
-	`GIT_SSL_NO_VERIFY` environment variable.
-
-http.sslCert::
-	File containing the SSL certificate when fetching or pushing
-	over HTTPS. Can be overridden by the `GIT_SSL_CERT` environment
-	variable.
-
-http.sslKey::
-	File containing the SSL private key when fetching or pushing
-	over HTTPS. Can be overridden by the `GIT_SSL_KEY` environment
-	variable.
-
-http.sslCertPasswordProtected::
-	Enable Git's password prompt for the SSL certificate.  Otherwise
-	OpenSSL will prompt the user, possibly many times, if the
-	certificate or private key is encrypted.  Can be overridden by the
-	`GIT_SSL_CERT_PASSWORD_PROTECTED` environment variable.
-
-http.sslCAInfo::
-	File containing the certificates to verify the peer with when
-	fetching or pushing over HTTPS. Can be overridden by the
-	`GIT_SSL_CAINFO` environment variable.
-
-http.sslCAPath::
-	Path containing files with the CA certificates to verify the peer
-	with when fetching or pushing over HTTPS. Can be overridden
-	by the `GIT_SSL_CAPATH` environment variable.
-
-http.sslBackend::
-	Name of the SSL backend to use (e.g. "openssl" or "schannel").
-	This option is ignored if cURL lacks support for choosing the SSL
-	backend at runtime.
-
-http.schannelCheckRevoke::
-	Used to enforce or disable certificate revocation checks in cURL
-	when http.sslBackend is set to "schannel". Defaults to `true` if
-	unset. Only necessary to disable this if Git consistently errors
-	and the message is about checking the revocation status of a
-	certificate. This option is ignored if cURL lacks support for
-	setting the relevant SSL option at runtime.
-
-http.schannelUseSSLCAInfo::
-	As of cURL v7.60.0, the Secure Channel backend can use the
-	certificate bundle provided via `http.sslCAInfo`, but that would
-	override the Windows Certificate Store. Since this is not desirable
-	by default, Git will tell cURL not to use that bundle by default
-	when the `schannel` backend was configured via `http.sslBackend`,
-	unless `http.schannelUseSSLCAInfo` overrides this behavior.
-
-http.pinnedpubkey::
-	Public key of the https service. It may either be the filename of
-	a PEM or DER encoded public key file or a string starting with
-	'sha256//' followed by the base64 encoded sha256 hash of the
-	public key. See also libcurl 'CURLOPT_PINNEDPUBLICKEY'. git will
-	exit with an error if this option is set but not supported by
-	cURL.
-
-http.sslTry::
-	Attempt to use AUTH SSL/TLS and encrypted data transfers
-	when connecting via regular FTP protocol. This might be needed
-	if the FTP server requires it for security reasons or you wish
-	to connect securely whenever remote FTP server supports it.
-	Default is false since it might trigger certificate verification
-	errors on misconfigured servers.
-
-http.maxRequests::
-	How many HTTP requests to launch in parallel. Can be overridden
-	by the `GIT_HTTP_MAX_REQUESTS` environment variable. Default is 5.
-
-http.minSessions::
-	The number of curl sessions (counted across slots) to be kept across
-	requests. They will not be ended with curl_easy_cleanup() until
-	http_cleanup() is invoked. If USE_CURL_MULTI is not defined, this
-	value will be capped at 1. Defaults to 1.
-
-http.postBuffer::
-	Maximum size in bytes of the buffer used by smart HTTP
-	transports when POSTing data to the remote system.
-	For requests larger than this buffer size, HTTP/1.1 and
-	Transfer-Encoding: chunked is used to avoid creating a
-	massive pack file locally.  Default is 1 MiB, which is
-	sufficient for most requests.
-
-http.lowSpeedLimit, http.lowSpeedTime::
-	If the HTTP transfer speed is less than 'http.lowSpeedLimit'
-	for longer than 'http.lowSpeedTime' seconds, the transfer is aborted.
-	Can be overridden by the `GIT_HTTP_LOW_SPEED_LIMIT` and
-	`GIT_HTTP_LOW_SPEED_TIME` environment variables.
-
-http.noEPSV::
-	A boolean which disables using of EPSV ftp command by curl.
-	This can helpful with some "poor" ftp servers which don't
-	support EPSV mode. Can be overridden by the `GIT_CURL_FTP_NO_EPSV`
-	environment variable. Default is false (curl will use EPSV).
-
-http.userAgent::
-	The HTTP USER_AGENT string presented to an HTTP server.  The default
-	value represents the version of the client Git such as git/1.7.1.
-	This option allows you to override this value to a more common value
-	such as Mozilla/4.0.  This may be necessary, for instance, if
-	connecting through a firewall that restricts HTTP connections to a set
-	of common USER_AGENT strings (but not including those like git/1.7.1).
-	Can be overridden by the `GIT_HTTP_USER_AGENT` environment variable.
-
-http.followRedirects::
-	Whether git should follow HTTP redirects. If set to `true`, git
-	will transparently follow any redirect issued by a server it
-	encounters. If set to `false`, git will treat all redirects as
-	errors. If set to `initial`, git will follow redirects only for
-	the initial request to a remote, but not for subsequent
-	follow-up HTTP requests. Since git uses the redirected URL as
-	the base for the follow-up requests, this is generally
-	sufficient. The default is `initial`.
-
-http.<url>.*::
-	Any of the http.* options above can be applied selectively to some URLs.
-	For a config key to match a URL, each element of the config key is
-	compared to that of the URL, in the following order:
-+
---
-. Scheme (e.g., `https` in `https://example.com/`). This field
-  must match exactly between the config key and the URL.
-
-. Host/domain name (e.g., `example.com` in `https://example.com/`).
-  This field must match between the config key and the URL. It is
-  possible to specify a `*` as part of the host name to match all subdomains
-  at this level. `https://*.example.com/` for example would match
-  `https://foo.example.com/`, but not `https://foo.bar.example.com/`.
-
-. Port number (e.g., `8080` in `http://example.com:8080/`).
-  This field must match exactly between the config key and the URL.
-  Omitted port numbers are automatically converted to the correct
-  default for the scheme before matching.
-
-. Path (e.g., `repo.git` in `https://example.com/repo.git`). The
-  path field of the config key must match the path field of the URL
-  either exactly or as a prefix of slash-delimited path elements.  This means
-  a config key with path `foo/` matches URL path `foo/bar`.  A prefix can only
-  match on a slash (`/`) boundary.  Longer matches take precedence (so a config
-  key with path `foo/bar` is a better match to URL path `foo/bar` than a config
-  key with just path `foo/`).
-
-. User name (e.g., `user` in `https://user@example.com/repo.git`). If
-  the config key has a user name it must match the user name in the
-  URL exactly. If the config key does not have a user name, that
-  config key will match a URL with any user name (including none),
-  but at a lower precedence than a config key with a user name.
---
-+
-The list above is ordered by decreasing precedence; a URL that matches
-a config key's path is preferred to one that matches its user name. For example,
-if the URL is `https://user@example.com/foo/bar` a config key match of
-`https://example.com/foo` will be preferred over a config key match of
-`https://user@example.com`.
-+
-All URLs are normalized before attempting any matching (the password part,
-if embedded in the URL, is always ignored for matching purposes) so that
-equivalent URLs that are simply spelled differently will match properly.
-Environment variable settings always override any matches.  The URLs that are
-matched against are those given directly to Git commands.  This means any URLs
-visited as a result of a redirection do not participate in matching.
+include::config/http.txt[]
 
 i18n.commitEncoding::
 	Character encoding the commit messages are stored in; Git itself
diff --git a/Documentation/config/http.txt b/Documentation/config/http.txt
new file mode 100644
index 0000000000..a56d848bc0
--- /dev/null
+++ b/Documentation/config/http.txt
@@ -0,0 +1,271 @@
+http.proxy::
+	Override the HTTP proxy, normally configured using the 'http_proxy',
+	'https_proxy', and 'all_proxy' environment variables (see `curl(1)`). In
+	addition to the syntax understood by curl, it is possible to specify a
+	proxy string with a user name but no password, in which case git will
+	attempt to acquire one in the same way it does for other credentials. See
+	linkgit:gitcredentials[7] for more information. The syntax thus is
+	'[protocol://][user[:password]@]proxyhost[:port]'. This can be overridden
+	on a per-remote basis; see remote.<name>.proxy
+
+http.proxyAuthMethod::
+	Set the method with which to authenticate against the HTTP proxy. This
+	only takes effect if the configured proxy string contains a user name part
+	(i.e. is of the form 'user@host' or 'user@host:port'). This can be
+	overridden on a per-remote basis; see `remote.<name>.proxyAuthMethod`.
+	Both can be overridden by the `GIT_HTTP_PROXY_AUTHMETHOD` environment
+	variable.  Possible values are:
++
+--
+* `anyauth` - Automatically pick a suitable authentication method. It is
+  assumed that the proxy answers an unauthenticated request with a 407
+  status code and one or more Proxy-authenticate headers with supported
+  authentication methods. This is the default.
+* `basic` - HTTP Basic authentication
+* `digest` - HTTP Digest authentication; this prevents the password from being
+  transmitted to the proxy in clear text
+* `negotiate` - GSS-Negotiate authentication (compare the --negotiate option
+  of `curl(1)`)
+* `ntlm` - NTLM authentication (compare the --ntlm option of `curl(1)`)
+--
+
+http.emptyAuth::
+	Attempt authentication without seeking a username or password.  This
+	can be used to attempt GSS-Negotiate authentication without specifying
+	a username in the URL, as libcurl normally requires a username for
+	authentication.
+
+http.delegation::
+	Control GSSAPI credential delegation. The delegation is disabled
+	by default in libcurl since version 7.21.7. Set parameter to tell
+	the server what it is allowed to delegate when it comes to user
+	credentials. Used with GSS/kerberos. Possible values are:
++
+--
+* `none` - Don't allow any delegation.
+* `policy` - Delegates if and only if the OK-AS-DELEGATE flag is set in the
+  Kerberos service ticket, which is a matter of realm policy.
+* `always` - Unconditionally allow the server to delegate.
+--
+
+
+http.extraHeader::
+	Pass an additional HTTP header when communicating with a server.  If
+	more than one such entry exists, all of them are added as extra
+	headers.  To allow overriding the settings inherited from the system
+	config, an empty value will reset the extra headers to the empty list.
+
+http.cookieFile::
+	The pathname of a file containing previously stored cookie lines,
+	which should be used
+	in the Git http session, if they match the server. The file format
+	of the file to read cookies from should be plain HTTP headers or
+	the Netscape/Mozilla cookie file format (see `curl(1)`).
+	NOTE that the file specified with http.cookieFile is used only as
+	input unless http.saveCookies is set.
+
+http.saveCookies::
+	If set, store cookies received during requests to the file specified by
+	http.cookieFile. Has no effect if http.cookieFile is unset.
+
+http.sslVersion::
+	The SSL version to use when negotiating an SSL connection, if you
+	want to force the default.  The available and default version
+	depend on whether libcurl was built against NSS or OpenSSL and the
+	particular configuration of the crypto library in use. Internally
+	this sets the 'CURLOPT_SSL_VERSION' option; see the libcurl
+	documentation for more details on the format of this option and
+	for the ssl version supported. Actually the possible values of
+	this option are:
+
+	- sslv2
+	- sslv3
+	- tlsv1
+	- tlsv1.0
+	- tlsv1.1
+	- tlsv1.2
+	- tlsv1.3
+
++
+Can be overridden by the `GIT_SSL_VERSION` environment variable.
+To force git to use libcurl's default ssl version and ignore any
+explicit http.sslversion option, set `GIT_SSL_VERSION` to the
+empty string.
+
+http.sslCipherList::
+  A list of SSL ciphers to use when negotiating an SSL connection.
+  The available ciphers depend on whether libcurl was built against
+  NSS or OpenSSL and the particular configuration of the crypto
+  library in use.  Internally this sets the 'CURLOPT_SSL_CIPHER_LIST'
+  option; see the libcurl documentation for more details on the format
+  of this list.
++
+Can be overridden by the `GIT_SSL_CIPHER_LIST` environment variable.
+To force git to use libcurl's default cipher list and ignore any
+explicit http.sslCipherList option, set `GIT_SSL_CIPHER_LIST` to the
+empty string.
+
+http.sslVerify::
+	Whether to verify the SSL certificate when fetching or pushing
+	over HTTPS. Defaults to true. Can be overridden by the
+	`GIT_SSL_NO_VERIFY` environment variable.
+
+http.sslCert::
+	File containing the SSL certificate when fetching or pushing
+	over HTTPS. Can be overridden by the `GIT_SSL_CERT` environment
+	variable.
+
+http.sslKey::
+	File containing the SSL private key when fetching or pushing
+	over HTTPS. Can be overridden by the `GIT_SSL_KEY` environment
+	variable.
+
+http.sslCertPasswordProtected::
+	Enable Git's password prompt for the SSL certificate.  Otherwise
+	OpenSSL will prompt the user, possibly many times, if the
+	certificate or private key is encrypted.  Can be overridden by the
+	`GIT_SSL_CERT_PASSWORD_PROTECTED` environment variable.
+
+http.sslCAInfo::
+	File containing the certificates to verify the peer with when
+	fetching or pushing over HTTPS. Can be overridden by the
+	`GIT_SSL_CAINFO` environment variable.
+
+http.sslCAPath::
+	Path containing files with the CA certificates to verify the peer
+	with when fetching or pushing over HTTPS. Can be overridden
+	by the `GIT_SSL_CAPATH` environment variable.
+
+http.sslBackend::
+	Name of the SSL backend to use (e.g. "openssl" or "schannel").
+	This option is ignored if cURL lacks support for choosing the SSL
+	backend at runtime.
+
+http.schannelCheckRevoke::
+	Used to enforce or disable certificate revocation checks in cURL
+	when http.sslBackend is set to "schannel". Defaults to `true` if
+	unset. Only necessary to disable this if Git consistently errors
+	and the message is about checking the revocation status of a
+	certificate. This option is ignored if cURL lacks support for
+	setting the relevant SSL option at runtime.
+
+http.schannelUseSSLCAInfo::
+	As of cURL v7.60.0, the Secure Channel backend can use the
+	certificate bundle provided via `http.sslCAInfo`, but that would
+	override the Windows Certificate Store. Since this is not desirable
+	by default, Git will tell cURL not to use that bundle by default
+	when the `schannel` backend was configured via `http.sslBackend`,
+	unless `http.schannelUseSSLCAInfo` overrides this behavior.
+
+http.pinnedpubkey::
+	Public key of the https service. It may either be the filename of
+	a PEM or DER encoded public key file or a string starting with
+	'sha256//' followed by the base64 encoded sha256 hash of the
+	public key. See also libcurl 'CURLOPT_PINNEDPUBLICKEY'. git will
+	exit with an error if this option is set but not supported by
+	cURL.
+
+http.sslTry::
+	Attempt to use AUTH SSL/TLS and encrypted data transfers
+	when connecting via regular FTP protocol. This might be needed
+	if the FTP server requires it for security reasons or you wish
+	to connect securely whenever remote FTP server supports it.
+	Default is false since it might trigger certificate verification
+	errors on misconfigured servers.
+
+http.maxRequests::
+	How many HTTP requests to launch in parallel. Can be overridden
+	by the `GIT_HTTP_MAX_REQUESTS` environment variable. Default is 5.
+
+http.minSessions::
+	The number of curl sessions (counted across slots) to be kept across
+	requests. They will not be ended with curl_easy_cleanup() until
+	http_cleanup() is invoked. If USE_CURL_MULTI is not defined, this
+	value will be capped at 1. Defaults to 1.
+
+http.postBuffer::
+	Maximum size in bytes of the buffer used by smart HTTP
+	transports when POSTing data to the remote system.
+	For requests larger than this buffer size, HTTP/1.1 and
+	Transfer-Encoding: chunked is used to avoid creating a
+	massive pack file locally.  Default is 1 MiB, which is
+	sufficient for most requests.
+
+http.lowSpeedLimit, http.lowSpeedTime::
+	If the HTTP transfer speed is less than 'http.lowSpeedLimit'
+	for longer than 'http.lowSpeedTime' seconds, the transfer is aborted.
+	Can be overridden by the `GIT_HTTP_LOW_SPEED_LIMIT` and
+	`GIT_HTTP_LOW_SPEED_TIME` environment variables.
+
+http.noEPSV::
+	A boolean which disables using of EPSV ftp command by curl.
+	This can helpful with some "poor" ftp servers which don't
+	support EPSV mode. Can be overridden by the `GIT_CURL_FTP_NO_EPSV`
+	environment variable. Default is false (curl will use EPSV).
+
+http.userAgent::
+	The HTTP USER_AGENT string presented to an HTTP server.  The default
+	value represents the version of the client Git such as git/1.7.1.
+	This option allows you to override this value to a more common value
+	such as Mozilla/4.0.  This may be necessary, for instance, if
+	connecting through a firewall that restricts HTTP connections to a set
+	of common USER_AGENT strings (but not including those like git/1.7.1).
+	Can be overridden by the `GIT_HTTP_USER_AGENT` environment variable.
+
+http.followRedirects::
+	Whether git should follow HTTP redirects. If set to `true`, git
+	will transparently follow any redirect issued by a server it
+	encounters. If set to `false`, git will treat all redirects as
+	errors. If set to `initial`, git will follow redirects only for
+	the initial request to a remote, but not for subsequent
+	follow-up HTTP requests. Since git uses the redirected URL as
+	the base for the follow-up requests, this is generally
+	sufficient. The default is `initial`.
+
+http.<url>.*::
+	Any of the http.* options above can be applied selectively to some URLs.
+	For a config key to match a URL, each element of the config key is
+	compared to that of the URL, in the following order:
++
+--
+. Scheme (e.g., `https` in `https://example.com/`). This field
+  must match exactly between the config key and the URL.
+
+. Host/domain name (e.g., `example.com` in `https://example.com/`).
+  This field must match between the config key and the URL. It is
+  possible to specify a `*` as part of the host name to match all subdomains
+  at this level. `https://*.example.com/` for example would match
+  `https://foo.example.com/`, but not `https://foo.bar.example.com/`.
+
+. Port number (e.g., `8080` in `http://example.com:8080/`).
+  This field must match exactly between the config key and the URL.
+  Omitted port numbers are automatically converted to the correct
+  default for the scheme before matching.
+
+. Path (e.g., `repo.git` in `https://example.com/repo.git`). The
+  path field of the config key must match the path field of the URL
+  either exactly or as a prefix of slash-delimited path elements.  This means
+  a config key with path `foo/` matches URL path `foo/bar`.  A prefix can only
+  match on a slash (`/`) boundary.  Longer matches take precedence (so a config
+  key with path `foo/bar` is a better match to URL path `foo/bar` than a config
+  key with just path `foo/`).
+
+. User name (e.g., `user` in `https://user@example.com/repo.git`). If
+  the config key has a user name it must match the user name in the
+  URL exactly. If the config key does not have a user name, that
+  config key will match a URL with any user name (including none),
+  but at a lower precedence than a config key with a user name.
+--
++
+The list above is ordered by decreasing precedence; a URL that matches
+a config key's path is preferred to one that matches its user name. For example,
+if the URL is `https://user@example.com/foo/bar` a config key match of
+`https://example.com/foo` will be preferred over a config key match of
+`https://user@example.com`.
++
+All URLs are normalized before attempting any matching (the password part,
+if embedded in the URL, is always ignored for matching purposes) so that
+equivalent URLs that are simply spelled differently will match properly.
+Environment variable settings always override any matches.  The URLs that are
+matched against are those given directly to Git commands.  This means any URLs
+visited as a result of a redirection do not participate in matching.
-- 
2.19.1.647.g708186aaf9


  parent reply	other threads:[~2018-10-27  6:24 UTC|newest]

Thread overview: 80+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-10-27  6:22 [PATCH 00/78] nd/config-split reroll Nguyễn Thái Ngọc Duy
2018-10-27  6:22 ` [PATCH 01/78] Update makefile in preparation for Documentation/config/*.txt Nguyễn Thái Ngọc Duy
2018-10-27  6:22 ` [PATCH 02/78] config.txt: move advice.* to a separate file Nguyễn Thái Ngọc Duy
2018-10-27  6:22 ` [PATCH 03/78] config.txt: move core.* " Nguyễn Thái Ngọc Duy
2018-10-27  6:22 ` [PATCH 04/78] config.txt: move add.* " Nguyễn Thái Ngọc Duy
2018-10-27  6:22 ` [PATCH 05/78] config.txt: move alias.* " Nguyễn Thái Ngọc Duy
2018-10-27  6:22 ` [PATCH 06/78] config.txt: move am.* " Nguyễn Thái Ngọc Duy
2018-10-27  6:22 ` [PATCH 07/78] config.txt: move apply.* " Nguyễn Thái Ngọc Duy
2018-10-27  6:22 ` [PATCH 08/78] config.txt: move blame.* " Nguyễn Thái Ngọc Duy
2018-10-27  6:22 ` [PATCH 09/78] config.txt: move branch.* " Nguyễn Thái Ngọc Duy
2018-10-27  6:22 ` [PATCH 10/78] config.txt: move browser.* " Nguyễn Thái Ngọc Duy
2018-10-27  6:22 ` [PATCH 11/78] config.txt: move checkout.* " Nguyễn Thái Ngọc Duy
2018-10-27  6:22 ` [PATCH 12/78] config.txt: move clean.* " Nguyễn Thái Ngọc Duy
2018-10-27  6:22 ` [PATCH 13/78] config.txt: move color.* " Nguyễn Thái Ngọc Duy
2018-10-27  6:22 ` [PATCH 14/78] config.txt: move column.* " Nguyễn Thái Ngọc Duy
2018-10-27  6:22 ` [PATCH 15/78] config.txt: move commit.* " Nguyễn Thái Ngọc Duy
2018-10-27  6:22 ` [PATCH 16/78] config.txt: move credential.* " Nguyễn Thái Ngọc Duy
2018-10-27  6:22 ` [PATCH 17/78] config.txt: move completion.* " Nguyễn Thái Ngọc Duy
2018-10-27  6:22 ` [PATCH 18/78] config.txt: move diff-config.txt to config/ Nguyễn Thái Ngọc Duy
2018-10-27  6:22 ` [PATCH 19/78] config.txt: move difftool.* to a separate file Nguyễn Thái Ngọc Duy
2018-10-27  6:22 ` [PATCH 20/78] config.txt: move fastimport.* " Nguyễn Thái Ngọc Duy
2018-10-27  6:22 ` [PATCH 21/78] config.txt: move fetch-config.txt to config/ Nguyễn Thái Ngọc Duy
2018-10-27  6:22 ` [PATCH 22/78] config.txt: move filter.* to a separate file Nguyễn Thái Ngọc Duy
2018-10-27  6:22 ` [PATCH 23/78] config.txt: move format-config.txt to config/ Nguyễn Thái Ngọc Duy
2018-10-27  6:22 ` [PATCH 24/78] config.txt: move fmt-merge-msg-config.txt " Nguyễn Thái Ngọc Duy
2018-10-27  6:22 ` [PATCH 25/78] config.txt: move fsck.* to a separate file Nguyễn Thái Ngọc Duy
2018-10-27  6:22 ` [PATCH 26/78] config.txt: move gc.* " Nguyễn Thái Ngọc Duy
2018-10-27  6:23 ` [PATCH 27/78] config.txt: move gitcvs-config.txt to config/ Nguyễn Thái Ngọc Duy
2018-10-27  6:23 ` [PATCH 28/78] config.txt: move gitweb.* to a separate file Nguyễn Thái Ngọc Duy
2018-10-27  6:23 ` [PATCH 29/78] config.txt: move grep.* " Nguyễn Thái Ngọc Duy
2018-10-27  6:23 ` [PATCH 30/78] config.txt: move gpg.* " Nguyễn Thái Ngọc Duy
2018-10-27  6:23 ` [PATCH 31/78] config.txt: move gui-config.txt to config/ Nguyễn Thái Ngọc Duy
2018-10-27  6:23 ` [PATCH 32/78] config.txt: move guitool.* to a separate file Nguyễn Thái Ngọc Duy
2018-10-27  6:23 ` [PATCH 33/78] config.txt: move help.* " Nguyễn Thái Ngọc Duy
2018-10-27  6:23 ` [PATCH 34/78] config.txt: move ssh.* " Nguyễn Thái Ngọc Duy
2018-10-27  6:23 ` Nguyễn Thái Ngọc Duy [this message]
2018-10-27  6:23 ` [PATCH 36/78] config.txt: move i18n.* " Nguyễn Thái Ngọc Duy
2018-10-27  6:23 ` [PATCH 37/78] git-imap-send.txt: move imap.* " Nguyễn Thái Ngọc Duy
2018-10-27  6:23 ` [PATCH 38/78] config.txt: move index.* " Nguyễn Thái Ngọc Duy
2018-10-27  6:23 ` [PATCH 39/78] config.txt: move init.* " Nguyễn Thái Ngọc Duy
2018-10-27  6:23 ` [PATCH 40/78] config.txt: move instaweb.* " Nguyễn Thái Ngọc Duy
2018-10-27  6:23 ` [PATCH 41/78] config.txt: move interactive.* " Nguyễn Thái Ngọc Duy
2018-10-27  6:23 ` [PATCH 42/78] config.txt: move log.* " Nguyễn Thái Ngọc Duy
2018-10-27  6:23 ` [PATCH 43/78] config.txt: move mailinfo.* " Nguyễn Thái Ngọc Duy
2018-10-27  6:23 ` [PATCH 44/78] config.txt: move mailmap.* " Nguyễn Thái Ngọc Duy
2018-10-27  6:23 ` [PATCH 45/78] config.txt: move man.* " Nguyễn Thái Ngọc Duy
2018-10-27  6:23 ` [PATCH 46/78] config.txt: move merge-config.txt to config/ Nguyễn Thái Ngọc Duy
2018-10-27  6:23 ` [PATCH 47/78] config.txt: move mergetool.* to a separate file Nguyễn Thái Ngọc Duy
2018-10-27  6:23 ` [PATCH 48/78] config.txt: move notes.* " Nguyễn Thái Ngọc Duy
2018-10-27  6:23 ` [PATCH 49/78] config.txt: move pack.* " Nguyễn Thái Ngọc Duy
2018-10-27  6:23 ` [PATCH 50/78] config.txt: move pager.* " Nguyễn Thái Ngọc Duy
2018-10-27  6:23 ` [PATCH 51/78] config.txt: move pretty.* " Nguyễn Thái Ngọc Duy
2018-10-27  6:23 ` [PATCH 52/78] config.txt: move protocol.* " Nguyễn Thái Ngọc Duy
2018-10-27  6:23 ` [PATCH 53/78] config.txt: move pull-config.txt to config/ Nguyễn Thái Ngọc Duy
2018-10-27  6:23 ` [PATCH 54/78] config.txt: move push-config.txt " Nguyễn Thái Ngọc Duy
2018-10-27  6:23 ` [PATCH 55/78] config.txt: move rebase-config.txt " Nguyễn Thái Ngọc Duy
2018-10-27  6:23 ` [PATCH 56/78] config.txt: move receive-config.txt " Nguyễn Thái Ngọc Duy
2018-10-27  6:23 ` [PATCH 57/78] config.txt: move remote.* to a separate file Nguyễn Thái Ngọc Duy
2018-10-27  6:23 ` [PATCH 58/78] config.txt: move remotes.* " Nguyễn Thái Ngọc Duy
2018-10-27  6:23 ` [PATCH 59/78] config.txt: move repack.* " Nguyễn Thái Ngọc Duy
2018-10-27  6:23 ` [PATCH 60/78] config.txt: move rerere.* " Nguyễn Thái Ngọc Duy
2018-10-27  6:23 ` [PATCH 61/78] config.txt: move reset.* " Nguyễn Thái Ngọc Duy
2018-10-27  6:23 ` [PATCH 62/78] config.txt: move sendemail-config.txt to config/ Nguyễn Thái Ngọc Duy
2018-10-27  6:23 ` [PATCH 63/78] config.txt: move sequencer.* to a separate file Nguyễn Thái Ngọc Duy
2018-10-27  6:23 ` [PATCH 64/78] config.txt: move showBranch.* " Nguyễn Thái Ngọc Duy
2018-10-27  6:23 ` [PATCH 65/78] config.txt: move splitIndex.* " Nguyễn Thái Ngọc Duy
2018-10-27  6:23 ` [PATCH 66/78] config.txt: move status.* " Nguyễn Thái Ngọc Duy
2018-10-27  6:23 ` [PATCH 67/78] config.txt: move stash.* " Nguyễn Thái Ngọc Duy
2018-10-27  6:23 ` [PATCH 68/78] config.txt: move submodule.* " Nguyễn Thái Ngọc Duy
2018-10-27  6:23 ` [PATCH 69/78] config.txt: move tag.* " Nguyễn Thái Ngọc Duy
2018-10-27  6:23 ` [PATCH 70/78] config.txt: move transfer.* " Nguyễn Thái Ngọc Duy
2018-10-27  6:23 ` [PATCH 71/78] config.txt: move uploadarchive.* " Nguyễn Thái Ngọc Duy
2018-10-27  6:23 ` [PATCH 72/78] config.txt: move uploadpack.* " Nguyễn Thái Ngọc Duy
2018-10-27  6:23 ` [PATCH 73/78] config.txt: move url.* " Nguyễn Thái Ngọc Duy
2018-10-27  6:23 ` [PATCH 74/78] config.txt: move user.* " Nguyễn Thái Ngọc Duy
2018-10-27  6:23 ` [PATCH 75/78] config.txt: move versionsort.* " Nguyễn Thái Ngọc Duy
2018-10-27  6:23 ` [PATCH 76/78] config.txt: move web.* " Nguyễn Thái Ngọc Duy
2018-10-27  6:23 ` [PATCH 77/78] config.txt: move worktree.* " Nguyễn Thái Ngọc Duy
2018-10-27  6:23 ` [PATCH 78/78] config.txt: remove config/dummy.txt Nguyễn Thái Ngọc Duy
2018-10-29  1:28 ` [PATCH 00/78] nd/config-split reroll Junio C Hamano

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=20181027062351.30446-36-pclouds@gmail.com \
    --to=pclouds@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.