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
evenで強制できますssh -tt
。コマンドライン引数を渡すことができない場合は、構成ファイルを使用して同じことを実行できます。RequestTTY yes
またはRequestTTY force
man ssh_config もご覧ください。