Set GIT_SSH_VARIANT when setting GIT_SSH

Make it explicit that the ssh wrapper we use for control master
support accepts OpenSSH-compatible command line arguments instead of
asking Git to guess.

The GIT_SSH_VARIANT setting was introduced in Git v2.13.0-rc0~3^2~2
(2017-02-01) as a more reliable detection method than relying on the
ssh command name.  Fortunately the default variant was 'ssh' (i.e.,
OpenSSH-compatible) so this wasn't initially required.

Now Git wants to start using more OpenSSH features
(-o SendEnv=GIT_PROTOCOL), and in order to do so its ssh variant
detection will need to be tweaked.  Set GIT_SSH_VARIANT explicitly
so this helper can continue to work regardless of how Git modifies
its autodetection.

Reported-by: William Yan <wyan@google.com>
Change-Id: I6bf2c53b4eb5303a429eae6cb68e0a5ccce89064
1 file changed
tree: 58ca90c82590183ea9cd5f21c116eb8927ab7e44
  1. .flake8
  2. .gitattributes
  3. .gitignore
  4. .mailmap
  5. .project
  6. .pydevproject
  7. COPYING
  8. README.md
  9. SUBMITTING_PATCHES.md
  10. color.py
  11. command.py
  12. docs/
  13. editor.py
  14. error.py
  15. event_log.py
  16. git_command.py
  17. git_config.py
  18. git_refs.py
  19. git_ssh
  20. gitc_utils.py
  21. hooks/
  22. main.py
  23. manifest_xml.py
  24. pager.py
  25. platform_utils.py
  26. platform_utils_win32.py
  27. progress.py
  28. project.py
  29. pyversion.py
  30. repo
  31. subcmds/
  32. tests/
  33. trace.py
  34. wrapper.py
README.md

repo

Repo is a tool built on top of Git. Repo helps manage many Git repositories, does the uploads to revision control systems, and automates parts of the development workflow. Repo is not meant to replace Git, only to make it easier to work with Git. The repo command is an executable Python script that you can put anywhere in your path.