Re: Default ssh command
From: Junio C Hamano <hidden>
Date: 2021-07-07 01:48:13
Aaron Hall [off-list ref] writes:
I was trying to push some binary files (PNGs) over ssh and found some
files inexplicably wouldn't successfully push.
I set, in my .gitconfig file:
[core]
sshCommand = ssh -e none
And it works now for all files (that I can tell).
From a close examination of the output where I noted escape codes
showing up, I believe the problem to be ssh escape codes.
`\n~.` for example closes the ssh client.
Therefore I think the default ssh command should be `ssh -e none`
instead of `ssh` for the benefit of users who won't recognize the
problem, unless `git` is expected to make use of ssh escape codes.Curious. When we use ssh to run the receive-pack over the wire while pushing, we do not ask for pty, and because the "-e" option to set the escape character is meaningful only when ssh runs with pty allocated, you shouldn't have to do this, unless you force pty allocation by e.g. passing "-t" yourself.