]>
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:: | |
48 | Experimental. If set, clients will attempt to communicate with a | |
49 | server using the specified protocol version. If unset, no | |
50 | attempt will be made by the client to communicate using a | |
51 | particular protocol version, this results in protocol version 0 | |
52 | being used. | |
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 | -- |