【问题标题】:Git post-update hook as a deploy management. Just like herokuGit 更新后挂钩作为部署管理。就像heroku一样
【发布时间】:2011-08-05 15:08:38
【问题描述】:

我想 git push 到服务器 repo,然后 post-update 钩子会拉最新的 repo 到部署文件夹,然后重新启动守护进程。

但 git 用户无法访问部署文件夹,也无法重新启动守护进程。

如何将 git push 部署为 heroku。

【问题讨论】:

    标签: linux git permissions gitosis


    【解决方案1】:

    您可以使用与 Heroku 上的推送类似的机制:基于 ssh 的操作。

    您在服务器端的 git 用户(即运行 post-update 挂钩的 git 用户)会通过 rsh 调用部署脚本,这意味着该 git 用户帐户具有:

    • 在服务器用户的$HOME/.ssh/authorized_keys 上发布的公钥(即能够访问部署文件夹并拥有守护进程的用户)
    • 私钥(在他的$HOME/.ssh中)

    【讨论】:

    • 我不明白这一点。 git用户可以做任何服务器用户可以通过这种方式做的事情吗?
    • @guilin:当您执行 ssh(安全 shell)命令时,该命令将作为您在 ssh 命令中指定的用户执行:ssh anotherUser@server mycommand。如果在服务器上,git 用户由于某种原因无法访问文件夹或重新启动守护程序,则需要找到正确的用户,并以该用户身份 ssh 命令。我不知道为什么 git 用户在您的情况下无权访问您的资源,但我提供 ssh 命令作为解决方法。
    猜你喜欢
    • 2014-10-30
    • 2012-08-08
    • 2012-11-13
    • 2012-03-15
    • 1970-01-01
    • 2011-08-25
    • 1970-01-01
    • 2019-08-10
    • 1970-01-01
    相关资源
    最近更新 更多