Merge branch 'js/t2106-cleanup'
[git] / Documentation / config / ssh.txt
1 ssh.variant::
2         By default, Git determines the command line arguments to use
3         based on the basename of the configured SSH command (configured
4         using the environment variable `GIT_SSH` or `GIT_SSH_COMMAND` or
5         the config setting `core.sshCommand`). If the basename is
6         unrecognized, Git will attempt to detect support of OpenSSH
7         options by first invoking the configured SSH command with the
8         `-G` (print configuration) option and will subsequently use
9         OpenSSH options (if that is successful) or no options besides
10         the host and remote command (if it fails).
11 +
12 The config variable `ssh.variant` can be set to override this detection.
13 Valid values are `ssh` (to use OpenSSH options), `plink`, `putty`,
14 `tortoiseplink`, `simple` (no options except the host and remote command).
15 The default auto-detection can be explicitly requested using the value
16 `auto`.  Any other value is treated as `ssh`.  This setting can also be
17 overridden via the environment variable `GIT_SSH_VARIANT`.
18 +
19 The current command-line parameters used for each variant are as
20 follows:
21 +
22 --
23
24 * `ssh` - [-p port] [-4] [-6] [-o option] [username@]host command
25
26 * `simple` - [username@]host command
27
28 * `plink` or `putty` - [-P port] [-4] [-6] [username@]host command
29
30 * `tortoiseplink` - [-P port] [-4] [-6] -batch [username@]host command
31
32 --
33 +
34 Except for the `simple` variant, command-line parameters are likely to
35 change as git gains new features.