]>
Commit | Line | Data |
---|---|---|
dd55172c NTND |
1 | protocol.allow:: |
2 | If set, provide a user defined default policy for all protocols which | |
3 | don't explicitly have a policy (`protocol.<name>.allow`). By default, | |
4 | if unset, known-safe protocols (http, https, git, ssh, file) have a | |
5 | default policy of `always`, known-dangerous protocols (ext) have a | |
6 | default policy of `never`, and all other protocols have a default | |
7 | policy of `user`. Supported policies: | |
8 | + | |
9 | -- | |
10 | ||
11 | * `always` - protocol is always able to be used. | |
12 | ||
13 | * `never` - protocol is never able to be used. | |
14 | ||
15 | * `user` - protocol is only able to be used when `GIT_PROTOCOL_FROM_USER` is | |
16 | either unset or has a value of 1. This policy should be used when you want a | |
17 | protocol to be directly usable by the user but don't want it used by commands which | |
18 | execute clone/fetch/push commands without user input, e.g. recursive | |
19 | submodule initialization. | |
20 | ||
21 | -- | |
22 | ||
23 | protocol.<name>.allow:: | |
24 | Set a policy to be used by protocol `<name>` with clone/fetch/push | |
25 | commands. See `protocol.allow` above for the available policies. | |
26 | + | |
27 | The protocol names currently used by git are: | |
28 | + | |
29 | -- | |
30 | - `file`: any local file-based path (including `file://` URLs, | |
31 | or local paths) | |
32 | ||
33 | - `git`: the anonymous git protocol over a direct TCP | |
34 | connection (or proxy, if configured) | |
35 | ||
36 | - `ssh`: git over ssh (including `host:path` syntax, | |
37 | `ssh://`, etc). | |
38 | ||
39 | - `http`: git over http, both "smart http" and "dumb http". | |
40 | Note that this does _not_ include `https`; if you want to configure | |
41 | both, you must do so individually. | |
42 | ||
43 | - any external helpers are named by their protocol (e.g., use | |
44 | `hg` to allow the `git-remote-hg` helper) | |
45 | -- | |
46 | ||
47 | protocol.version:: | |
b9ab1707 JN |
48 | If set, clients will attempt to communicate with a server |
49 | using the specified protocol version. If the server does | |
50 | not support it, communication falls back to version 0. | |
3697caf4 JN |
51 | If unset, the default is `0`, unless `feature.experimental` |
52 | is enabled, in which case the default is `2`. | |
dd55172c NTND |
53 | Supported versions: |
54 | + | |
55 | -- | |
56 | ||
57 | * `0` - the original wire protocol. | |
58 | ||
59 | * `1` - the original wire protocol with the addition of a version string | |
60 | in the initial response from the server. | |
61 | ||
62 | * `2` - link:technical/protocol-v2.html[wire protocol version 2]. | |
63 | ||
64 | -- |