
Я пытаюсь передать файл git commit
со своего ноутбука на сервер, но постоянно получаю следующее сообщение об ошибке:
remote: sudo: no tty present and no askpass program specified
To ssh://[email protected]/~/site_hub
У меня в sudoers есть следующее:
Defaults:git !requiretty
git ALL=(apache) NOPASSWD: /usr/bin/git
Не уверен, почему я получаю это сообщение об ошибке. Я поискал в Google, но не нашел решения.
решение1
ssh не всегда открывает (псевдо) tty. Это может быть в данном случае. Однако выделение tty может быть принудительно выполнено: ssh -t
или даже ssh -tt
. Если вы не можете передать аргументы командной строки, то вы можете сделать то же самое через файл конфигурации: RequestTTY yes
или RequestTTY force
, см. man ssh_config.