Linux Git更新后挂钩作为部署管理。就像希罗库一样

Linux Git更新后挂钩作为部署管理。就像希罗库一样,linux,git,permissions,gitosis,Linux,Git,Permissions,Gitosis,我想将git推送到服务器repo,然后post-update钩子将拉最后一个repo到deploy文件夹,并重新启动守护进程 但git用户无法访问deploy文件夹,也无法重新启动守护进程 如何作为heroku进行git推送部署。您可以使用与heroku推送类似的机制:基于ssh的操作 服务器端的git用户(即运行post updatehook的git用户)将通过rsh调用部署脚本,这意味着git用户帐户具有: 在服务器用户的$HOME/.ssh/authorized_keys上发布的公钥(即

我想将git推送到服务器repo,然后post-update钩子将拉最后一个repo到deploy文件夹,并重新启动守护进程

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


如何作为heroku进行git推送部署。

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

服务器端的git用户(即运行
post update
hook的git用户)将通过rsh调用部署脚本,这意味着git用户帐户具有:

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

我不明白这一点。git user可以用这种方式做服务器用户可以做的任何事情?@guilin:当您执行ssh(secure shell)命令时,该命令将以您在ssh命令中指定的用户身份执行:
sshanotherUser@servermycommand
。如果在服务器上,git用户由于任何原因无法访问文件夹或重新启动守护进程,则需要找到正确的用户,并以该用户的身份使用ssh命令。我不知道为什么git用户不能访问您的资源,但我提供了ssh命令作为解决方法。