"Fossies" - the Fresh Open Source Software Archive
Member "git-2.23.0.windows.1/Documentation/config/http.txt" (16 Aug 2019, 12463 Bytes) of package /windows/misc/git-2.23.0.windows.1.zip:
As a special service "Fossies" has tried to format the requested text file into HTML format (style: standard
) with prefixed line numbers.
Alternatively you can here view
the uninterpreted source code file.
2 Override the HTTP proxy, normally configured using the 'http_proxy',
3 'https_proxy', and 'all_proxy' environment variables (see `curl(1)`). In
4 addition to the syntax understood by curl, it is possible to specify a
5 proxy string with a user name but no password, in which case git will
6 attempt to acquire one in the same way it does for other credentials. See
7 linkgit:gitcredentials for more information. The syntax thus is
8 '[protocol://][user[:password]@]proxyhost[:port]'. This can be overridden
9 on a per-remote basis; see remote.<name>.proxy
12 Set the method with which to authenticate against the HTTP proxy. This
13 only takes effect if the configured proxy string contains a user name part
14 (i.e. is of the form 'user@host' or 'user@host:port'). This can be
15 overridden on a per-remote basis; see `remote.<name>.proxyAuthMethod`.
16 Both can be overridden by the `GIT_HTTP_PROXY_AUTHMETHOD` environment
17 variable. Possible values are:
20 * `anyauth` - Automatically pick a suitable authentication method. It is
21 assumed that the proxy answers an unauthenticated request with a 407
22 status code and one or more Proxy-authenticate headers with supported
23 authentication methods. This is the default.
24 * `basic` - HTTP Basic authentication
25 * `digest` - HTTP Digest authentication; this prevents the password from being
26 transmitted to the proxy in clear text
27 * `negotiate` - GSS-Negotiate authentication (compare the --negotiate option
28 of `curl(1)`)
29 * `ntlm` - NTLM authentication (compare the --ntlm option of `curl(1)`)
33 Attempt authentication without seeking a username or password. This
34 can be used to attempt GSS-Negotiate authentication without specifying
35 a username in the URL, as libcurl normally requires a username for
39 Control GSSAPI credential delegation. The delegation is disabled
40 by default in libcurl since version 7.21.7. Set parameter to tell
41 the server what it is allowed to delegate when it comes to user
42 credentials. Used with GSS/kerberos. Possible values are:
45 * `none` - Don't allow any delegation.
46 * `policy` - Delegates if and only if the OK-AS-DELEGATE flag is set in the
47 Kerberos service ticket, which is a matter of realm policy.
48 * `always` - Unconditionally allow the server to delegate.
53 Pass an additional HTTP header when communicating with a server. If
54 more than one such entry exists, all of them are added as extra
55 headers. To allow overriding the settings inherited from the system
56 config, an empty value will reset the extra headers to the empty list.
59 The pathname of a file containing previously stored cookie lines,
60 which should be used
61 in the Git http session, if they match the server. The file format
62 of the file to read cookies from should be plain HTTP headers or
63 the Netscape/Mozilla cookie file format (see `curl(1)`).
64 NOTE that the file specified with http.cookieFile is used only as
65 input unless http.saveCookies is set.
68 If set, store cookies received during requests to the file specified by
69 http.cookieFile. Has no effect if http.cookieFile is unset.
72 Use the specified HTTP protocol version when communicating with a server.
73 If you want to force the default. The available and default version depend
74 on libcurl. Actually the possible values of
75 this option are:
77 - HTTP/2
78 - HTTP/1.1
81 The SSL version to use when negotiating an SSL connection, if you
82 want to force the default. The available and default version
83 depend on whether libcurl was built against NSS or OpenSSL and the
84 particular configuration of the crypto library in use. Internally
85 this sets the 'CURLOPT_SSL_VERSION' option; see the libcurl
86 documentation for more details on the format of this option and
87 for the ssl version supported. Actually the possible values of
88 this option are:
90 - sslv2
91 - sslv3
92 - tlsv1
93 - tlsv1.0
94 - tlsv1.1
95 - tlsv1.2
96 - tlsv1.3
99 Can be overridden by the `GIT_SSL_VERSION` environment variable.
100 To force git to use libcurl's default ssl version and ignore any
101 explicit http.sslversion option, set `GIT_SSL_VERSION` to the
102 empty string.
105 A list of SSL ciphers to use when negotiating an SSL connection.
106 The available ciphers depend on whether libcurl was built against
107 NSS or OpenSSL and the particular configuration of the crypto
108 library in use. Internally this sets the 'CURLOPT_SSL_CIPHER_LIST'
109 option; see the libcurl documentation for more details on the format
110 of this list.
112 Can be overridden by the `GIT_SSL_CIPHER_LIST` environment variable.
113 To force git to use libcurl's default cipher list and ignore any
114 explicit http.sslCipherList option, set `GIT_SSL_CIPHER_LIST` to the
115 empty string.
118 Whether to verify the SSL certificate when fetching or pushing
119 over HTTPS. Defaults to true. Can be overridden by the
120 `GIT_SSL_NO_VERIFY` environment variable.
123 File containing the SSL certificate when fetching or pushing
124 over HTTPS. Can be overridden by the `GIT_SSL_CERT` environment
128 File containing the SSL private key when fetching or pushing
129 over HTTPS. Can be overridden by the `GIT_SSL_KEY` environment
133 Enable Git's password prompt for the SSL certificate. Otherwise
134 OpenSSL will prompt the user, possibly many times, if the
135 certificate or private key is encrypted. Can be overridden by the
136 `GIT_SSL_CERT_PASSWORD_PROTECTED` environment variable.
139 File containing the certificates to verify the peer with when
140 fetching or pushing over HTTPS. Can be overridden by the
141 `GIT_SSL_CAINFO` environment variable.
144 Path containing files with the CA certificates to verify the peer
145 with when fetching or pushing over HTTPS. Can be overridden
146 by the `GIT_SSL_CAPATH` environment variable.
149 Name of the SSL backend to use (e.g. "openssl" or "schannel").
150 This option is ignored if cURL lacks support for choosing the SSL
151 backend at runtime.
154 Used to enforce or disable certificate revocation checks in cURL
155 when http.sslBackend is set to "schannel". Defaults to `true` if
156 unset. Only necessary to disable this if Git consistently errors
157 and the message is about checking the revocation status of a
158 certificate. This option is ignored if cURL lacks support for
159 setting the relevant SSL option at runtime.
162 As of cURL v7.60.0, the Secure Channel backend can use the
163 certificate bundle provided via `http.sslCAInfo`, but that would
164 override the Windows Certificate Store. Since this is not desirable
165 by default, Git will tell cURL not to use that bundle by default
166 when the `schannel` backend was configured via `http.sslBackend`,
167 unless `http.schannelUseSSLCAInfo` overrides this behavior.
170 Public key of the https service. It may either be the filename of
171 a PEM or DER encoded public key file or a string starting with
172 'sha256//' followed by the base64 encoded sha256 hash of the
173 public key. See also libcurl 'CURLOPT_PINNEDPUBLICKEY'. git will
174 exit with an error if this option is set but not supported by
178 Attempt to use AUTH SSL/TLS and encrypted data transfers
179 when connecting via regular FTP protocol. This might be needed
180 if the FTP server requires it for security reasons or you wish
181 to connect securely whenever remote FTP server supports it.
182 Default is false since it might trigger certificate verification
183 errors on misconfigured servers.
186 How many HTTP requests to launch in parallel. Can be overridden
187 by the `GIT_HTTP_MAX_REQUESTS` environment variable. Default is 5.
190 The number of curl sessions (counted across slots) to be kept across
191 requests. They will not be ended with curl_easy_cleanup() until
192 http_cleanup() is invoked. If USE_CURL_MULTI is not defined, this
193 value will be capped at 1. Defaults to 1.
196 Maximum size in bytes of the buffer used by smart HTTP
197 transports when POSTing data to the remote system.
198 For requests larger than this buffer size, HTTP/1.1 and
199 Transfer-Encoding: chunked is used to avoid creating a
200 massive pack file locally. Default is 1 MiB, which is
201 sufficient for most requests.
203 http.lowSpeedLimit, http.lowSpeedTime::
204 If the HTTP transfer speed is less than 'http.lowSpeedLimit'
205 for longer than 'http.lowSpeedTime' seconds, the transfer is aborted.
206 Can be overridden by the `GIT_HTTP_LOW_SPEED_LIMIT` and
207 `GIT_HTTP_LOW_SPEED_TIME` environment variables.
210 A boolean which disables using of EPSV ftp command by curl.
211 This can helpful with some "poor" ftp servers which don't
212 support EPSV mode. Can be overridden by the `GIT_CURL_FTP_NO_EPSV`
213 environment variable. Default is false (curl will use EPSV).
216 The HTTP USER_AGENT string presented to an HTTP server. The default
217 value represents the version of the client Git such as git/1.7.1.
218 This option allows you to override this value to a more common value
219 such as Mozilla/4.0. This may be necessary, for instance, if
220 connecting through a firewall that restricts HTTP connections to a set
221 of common USER_AGENT strings (but not including those like git/1.7.1).
222 Can be overridden by the `GIT_HTTP_USER_AGENT` environment variable.
225 Whether git should follow HTTP redirects. If set to `true`, git
226 will transparently follow any redirect issued by a server it
227 encounters. If set to `false`, git will treat all redirects as
228 errors. If set to `initial`, git will follow redirects only for
229 the initial request to a remote, but not for subsequent
230 follow-up HTTP requests. Since git uses the redirected URL as
231 the base for the follow-up requests, this is generally
232 sufficient. The default is `initial`.
235 Any of the http.* options above can be applied selectively to some URLs.
236 For a config key to match a URL, each element of the config key is
237 compared to that of the URL, in the following order:
240 . Scheme (e.g., `https` in `https://example.com/`). This field
241 must match exactly between the config key and the URL.
243 . Host/domain name (e.g., `example.com` in `https://example.com/`).
244 This field must match between the config key and the URL. It is
245 possible to specify a `*` as part of the host name to match all subdomains
246 at this level. `https://*.example.com/` for example would match
247 `https://foo.example.com/`, but not `https://foo.bar.example.com/`.
249 . Port number (e.g., `8080` in `http://example.com:8080/`).
250 This field must match exactly between the config key and the URL.
251 Omitted port numbers are automatically converted to the correct
252 default for the scheme before matching.
254 . Path (e.g., `repo.git` in `https://example.com/repo.git`). The
255 path field of the config key must match the path field of the URL
256 either exactly or as a prefix of slash-delimited path elements. This means
257 a config key with path `foo/` matches URL path `foo/bar`. A prefix can only
258 match on a slash (`/`) boundary. Longer matches take precedence (so a config
259 key with path `foo/bar` is a better match to URL path `foo/bar` than a config
260 key with just path `foo/`).
262 . User name (e.g., `user` in `https://email@example.com/repo.git`). If
263 the config key has a user name it must match the user name in the
264 URL exactly. If the config key does not have a user name, that
265 config key will match a URL with any user name (including none),
266 but at a lower precedence than a config key with a user name.
269 The list above is ordered by decreasing precedence; a URL that matches
270 a config key's path is preferred to one that matches its user name. For example,
271 if the URL is `https://firstname.lastname@example.org/foo/bar` a config key match of
272 `https://example.com/foo` will be preferred over a config key match of
275 All URLs are normalized before attempting any matching (the password part,
276 if embedded in the URL, is always ignored for matching purposes) so that
277 equivalent URLs that are simply spelled differently will match properly.
278 Environment variable settings always override any matches. The URLs that are
279 matched against are those given directly to Git commands. This means any URLs
280 visited as a result of a redirection do not participate in matching.