-
Type:
Suggestion
-
Resolution: Unresolved
-
None
-
Component/s: General
-
None
Starting with Version 1709, Windows 10 includes an OpenSSH client and server that you can enable as optional features in settings.
The advantage of this is not only that no additional installation of OpenSSH is necessary when using Windows but also that the included SSH agent leverages the Windows Credential Manager to store any SSH key passphrases in the registry securely encrypted with the Windows user password. This means that the SSH agent automatically unlocks the SSH keys during login so it is not necessary to enter the passphrases when starting the SSH agent as would be the case when using PuTTY Pageant or Git's inbuilt SSH agent on Windows.
Git has a configuration flag in the global .gitconfig under [core] called sshCommand that you can set to a custom path to the SSH executable. Setting this to Windows' own SSH client ("C:\Windows\System32\OpenSSH\ssh.exe") lets Git use Windows' own SSH agent as well. This setting works without issue in Git Bash or in e.g. VS Code.
However, SourceTree seems to ignore this setting and keeps using Git's built-in SSH agent under (by default) "C:\Program Files\Git\usr\bin\ssh-agent.exe". This is when using SourceTree's presetting "OpenSSH" for the SSH client.
Please update SourceTree to either use said configuration flag in the .gitconfig or to let one specify a custom path to an SSH client in SourceTree's settings.