SSH를 통해 git을 사용하는 경우 tty가 존재하지 않으며 Askpass 프로그램이 지정되지 않습니다.

SSH를 통해 git을 사용하는 경우 tty가 존재하지 않으며 Askpass 프로그램이 지정되지 않습니다.

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

왜 그 오류 메시지가 나타나는지 잘 모르겠습니다. 구글링을 해봤지만 해결책을 찾지 못했습니다.

답변1

ssh가 항상 (의사)tty를 열지는 않습니다. 여기서는 그럴 수도 있습니다. tty 할당은 ssh -teven 을 통해 강제할 수 있습니다 ssh -tt. 명령줄 인수를 전달할 수 없는 경우 구성 파일을 통해 동일한 작업을 수행할 수 있습니다. RequestTTY yes또는 RequestTTY forceman ssh_config를 참조하세요.

관련 정보