@@ -349,277 +349,7 @@ include::config/guitool.txt[]
349349
350350include::config/help.txt[]
351351
352- http.proxy::
353- Override the HTTP proxy, normally configured using the 'http_proxy',
354- 'https_proxy', and 'all_proxy' environment variables (see `curl(1)`). In
355- addition to the syntax understood by curl, it is possible to specify a
356- proxy string with a user name but no password, in which case git will
357- attempt to acquire one in the same way it does for other credentials. See
358- linkgit:gitcredentials[7] for more information. The syntax thus is
359- '[protocol://][user[:password]@]proxyhost[:port]'. This can be overridden
360- on a per-remote basis; see remote.<name>.proxy
361-
362- http.proxyAuthMethod::
363- Set the method with which to authenticate against the HTTP proxy. This
364- only takes effect if the configured proxy string contains a user name part
365- (i.e. is of the form 'user@host' or 'user@host:port'). This can be
366- overridden on a per-remote basis; see `remote.<name>.proxyAuthMethod`.
367- Both can be overridden by the `GIT_HTTP_PROXY_AUTHMETHOD` environment
368- variable. Possible values are:
369- +
370- --
371- * `anyauth` - Automatically pick a suitable authentication method. It is
372- assumed that the proxy answers an unauthenticated request with a 407
373- status code and one or more Proxy-authenticate headers with supported
374- authentication methods. This is the default.
375- * `basic` - HTTP Basic authentication
376- * `digest` - HTTP Digest authentication; this prevents the password from being
377- transmitted to the proxy in clear text
378- * `negotiate` - GSS-Negotiate authentication (compare the --negotiate option
379- of `curl(1)`)
380- * `ntlm` - NTLM authentication (compare the --ntlm option of `curl(1)`)
381- --
382-
383- http.emptyAuth::
384- Attempt authentication without seeking a username or password. This
385- can be used to attempt GSS-Negotiate authentication without specifying
386- a username in the URL, as libcurl normally requires a username for
387- authentication.
388-
389- http.delegation::
390- Control GSSAPI credential delegation. The delegation is disabled
391- by default in libcurl since version 7.21.7. Set parameter to tell
392- the server what it is allowed to delegate when it comes to user
393- credentials. Used with GSS/kerberos. Possible values are:
394- +
395- --
396- * `none` - Don't allow any delegation.
397- * `policy` - Delegates if and only if the OK-AS-DELEGATE flag is set in the
398- Kerberos service ticket, which is a matter of realm policy.
399- * `always` - Unconditionally allow the server to delegate.
400- --
401-
402-
403- http.extraHeader::
404- Pass an additional HTTP header when communicating with a server. If
405- more than one such entry exists, all of them are added as extra
406- headers. To allow overriding the settings inherited from the system
407- config, an empty value will reset the extra headers to the empty list.
408-
409- http.cookieFile::
410- The pathname of a file containing previously stored cookie lines,
411- which should be used
412- in the Git http session, if they match the server. The file format
413- of the file to read cookies from should be plain HTTP headers or
414- the Netscape/Mozilla cookie file format (see `curl(1)`).
415- NOTE that the file specified with http.cookieFile is used only as
416- input unless http.saveCookies is set.
417-
418- http.saveCookies::
419- If set, store cookies received during requests to the file specified by
420- http.cookieFile. Has no effect if http.cookieFile is unset.
421-
422- http.sslVersion::
423- The SSL version to use when negotiating an SSL connection, if you
424- want to force the default. The available and default version
425- depend on whether libcurl was built against NSS or OpenSSL and the
426- particular configuration of the crypto library in use. Internally
427- this sets the 'CURLOPT_SSL_VERSION' option; see the libcurl
428- documentation for more details on the format of this option and
429- for the ssl version supported. Actually the possible values of
430- this option are:
431-
432- - sslv2
433- - sslv3
434- - tlsv1
435- - tlsv1.0
436- - tlsv1.1
437- - tlsv1.2
438- - tlsv1.3
439-
440- +
441- Can be overridden by the `GIT_SSL_VERSION` environment variable.
442- To force git to use libcurl's default ssl version and ignore any
443- explicit http.sslversion option, set `GIT_SSL_VERSION` to the
444- empty string.
445-
446- http.sslCipherList::
447- A list of SSL ciphers to use when negotiating an SSL connection.
448- The available ciphers depend on whether libcurl was built against
449- NSS or OpenSSL and the particular configuration of the crypto
450- library in use. Internally this sets the 'CURLOPT_SSL_CIPHER_LIST'
451- option; see the libcurl documentation for more details on the format
452- of this list.
453- +
454- Can be overridden by the `GIT_SSL_CIPHER_LIST` environment variable.
455- To force git to use libcurl's default cipher list and ignore any
456- explicit http.sslCipherList option, set `GIT_SSL_CIPHER_LIST` to the
457- empty string.
458-
459- http.sslVerify::
460- Whether to verify the SSL certificate when fetching or pushing
461- over HTTPS. Defaults to true. Can be overridden by the
462- `GIT_SSL_NO_VERIFY` environment variable.
463-
464- http.sslCert::
465- File containing the SSL certificate when fetching or pushing
466- over HTTPS. Can be overridden by the `GIT_SSL_CERT` environment
467- variable.
468-
469- http.sslKey::
470- File containing the SSL private key when fetching or pushing
471- over HTTPS. Can be overridden by the `GIT_SSL_KEY` environment
472- variable.
473-
474- http.sslCertPasswordProtected::
475- Enable Git's password prompt for the SSL certificate. Otherwise
476- OpenSSL will prompt the user, possibly many times, if the
477- certificate or private key is encrypted. Can be overridden by the
478- `GIT_SSL_CERT_PASSWORD_PROTECTED` environment variable.
479-
480- http.sslCAInfo::
481- File containing the certificates to verify the peer with when
482- fetching or pushing over HTTPS. Can be overridden by the
483- `GIT_SSL_CAINFO` environment variable.
484-
485- http.sslCAPath::
486- Path containing files with the CA certificates to verify the peer
487- with when fetching or pushing over HTTPS. Can be overridden
488- by the `GIT_SSL_CAPATH` environment variable.
489-
490- http.sslBackend::
491- Name of the SSL backend to use (e.g. "openssl" or "schannel").
492- This option is ignored if cURL lacks support for choosing the SSL
493- backend at runtime.
494-
495- http.schannelCheckRevoke::
496- Used to enforce or disable certificate revocation checks in cURL
497- when http.sslBackend is set to "schannel". Defaults to `true` if
498- unset. Only necessary to disable this if Git consistently errors
499- and the message is about checking the revocation status of a
500- certificate. This option is ignored if cURL lacks support for
501- setting the relevant SSL option at runtime.
502-
503- http.schannelUseSSLCAInfo::
504- As of cURL v7.60.0, the Secure Channel backend can use the
505- certificate bundle provided via `http.sslCAInfo`, but that would
506- override the Windows Certificate Store. Since this is not desirable
507- by default, Git will tell cURL not to use that bundle by default
508- when the `schannel` backend was configured via `http.sslBackend`,
509- unless `http.schannelUseSSLCAInfo` overrides this behavior.
510-
511- http.pinnedpubkey::
512- Public key of the https service. It may either be the filename of
513- a PEM or DER encoded public key file or a string starting with
514- 'sha256//' followed by the base64 encoded sha256 hash of the
515- public key. See also libcurl 'CURLOPT_PINNEDPUBLICKEY'. git will
516- exit with an error if this option is set but not supported by
517- cURL.
518-
519- http.sslTry::
520- Attempt to use AUTH SSL/TLS and encrypted data transfers
521- when connecting via regular FTP protocol. This might be needed
522- if the FTP server requires it for security reasons or you wish
523- to connect securely whenever remote FTP server supports it.
524- Default is false since it might trigger certificate verification
525- errors on misconfigured servers.
526-
527- http.maxRequests::
528- How many HTTP requests to launch in parallel. Can be overridden
529- by the `GIT_HTTP_MAX_REQUESTS` environment variable. Default is 5.
530-
531- http.minSessions::
532- The number of curl sessions (counted across slots) to be kept across
533- requests. They will not be ended with curl_easy_cleanup() until
534- http_cleanup() is invoked. If USE_CURL_MULTI is not defined, this
535- value will be capped at 1. Defaults to 1.
536-
537- http.postBuffer::
538- Maximum size in bytes of the buffer used by smart HTTP
539- transports when POSTing data to the remote system.
540- For requests larger than this buffer size, HTTP/1.1 and
541- Transfer-Encoding: chunked is used to avoid creating a
542- massive pack file locally. Default is 1 MiB, which is
543- sufficient for most requests.
544-
545- http.lowSpeedLimit, http.lowSpeedTime::
546- If the HTTP transfer speed is less than 'http.lowSpeedLimit'
547- for longer than 'http.lowSpeedTime' seconds, the transfer is aborted.
548- Can be overridden by the `GIT_HTTP_LOW_SPEED_LIMIT` and
549- `GIT_HTTP_LOW_SPEED_TIME` environment variables.
550-
551- http.noEPSV::
552- A boolean which disables using of EPSV ftp command by curl.
553- This can helpful with some "poor" ftp servers which don't
554- support EPSV mode. Can be overridden by the `GIT_CURL_FTP_NO_EPSV`
555- environment variable. Default is false (curl will use EPSV).
556-
557- http.userAgent::
558- The HTTP USER_AGENT string presented to an HTTP server. The default
559- value represents the version of the client Git such as git/1.7.1.
560- This option allows you to override this value to a more common value
561- such as Mozilla/4.0. This may be necessary, for instance, if
562- connecting through a firewall that restricts HTTP connections to a set
563- of common USER_AGENT strings (but not including those like git/1.7.1).
564- Can be overridden by the `GIT_HTTP_USER_AGENT` environment variable.
565-
566- http.followRedirects::
567- Whether git should follow HTTP redirects. If set to `true`, git
568- will transparently follow any redirect issued by a server it
569- encounters. If set to `false`, git will treat all redirects as
570- errors. If set to `initial`, git will follow redirects only for
571- the initial request to a remote, but not for subsequent
572- follow-up HTTP requests. Since git uses the redirected URL as
573- the base for the follow-up requests, this is generally
574- sufficient. The default is `initial`.
575-
576- http.<url>.*::
577- Any of the http.* options above can be applied selectively to some URLs.
578- For a config key to match a URL, each element of the config key is
579- compared to that of the URL, in the following order:
580- +
581- --
582- . Scheme (e.g., `https` in `https://example.com/`). This field
583- must match exactly between the config key and the URL.
584-
585- . Host/domain name (e.g., `example.com` in `https://example.com/`).
586- This field must match between the config key and the URL. It is
587- possible to specify a `*` as part of the host name to match all subdomains
588- at this level. `https://*.example.com/` for example would match
589- `https://foo.example.com/`, but not `https://foo.bar.example.com/`.
590-
591- . Port number (e.g., `8080` in `http://example.com:8080/`).
592- This field must match exactly between the config key and the URL.
593- Omitted port numbers are automatically converted to the correct
594- default for the scheme before matching.
595-
596- . Path (e.g., `repo.git` in `https://example.com/repo.git`). The
597- path field of the config key must match the path field of the URL
598- either exactly or as a prefix of slash-delimited path elements. This means
599- a config key with path `foo/` matches URL path `foo/bar`. A prefix can only
600- match on a slash (`/`) boundary. Longer matches take precedence (so a config
601- key with path `foo/bar` is a better match to URL path `foo/bar` than a config
602- key with just path `foo/`).
603-
604- . User name (e.g., `user` in `https://user@example.com/repo.git`). If
605- the config key has a user name it must match the user name in the
606- URL exactly. If the config key does not have a user name, that
607- config key will match a URL with any user name (including none),
608- but at a lower precedence than a config key with a user name.
609- --
610- +
611- The list above is ordered by decreasing precedence; a URL that matches
612- a config key's path is preferred to one that matches its user name. For example,
613- if the URL is `https://user@example.com/foo/bar` a config key match of
614- `https://example.com/foo` will be preferred over a config key match of
615- `https://user@example.com`.
616- +
617- All URLs are normalized before attempting any matching (the password part,
618- if embedded in the URL, is always ignored for matching purposes) so that
619- equivalent URLs that are simply spelled differently will match properly.
620- Environment variable settings always override any matches. The URLs that are
621- matched against are those given directly to Git commands. This means any URLs
622- visited as a result of a redirection do not participate in matching.
352+ include::config/http.txt[]
623353
624354i18n.commitEncoding::
625355 Character encoding the commit messages are stored in; Git itself
0 commit comments