5

我正在使用 git-deploy Ruby gem 将应用程序交付到登台服务器。使用 SSH 密钥执行部署。

在我的after_push脚本中,我想运行一个带有 的命令sudo,该命令随后会询问我的密码,因为 sudo 权限是有限的(没有密码就无法运行 sudo)。

实际上我的 sudo 命令失败了:

sudo: no tty present and no askpass program specified

我尝试添加一个 askpass 程序并根据 git 手册指定它。

如何在脚本git-push中为交互式命令打开 TTY?after_push

4

1 回答 1

2

到目前为止,我所寻求的似乎是不可能的。没有可用的 tty,是我从阅读 Query 中收集到的关于在 git中设置预接收钩子的内容吗?是否可以接受用户输入作为远程 git 后接收钩子的一部分?

关于如何在接收后执行受密码保护的 sudo 操作有什么更好的建议吗?

更新:在如何从 commit-msg 挂钩中提示用户?

不可能做到我在这里尝试实现的目标。

于 2012-07-27T12:35:59.633 回答