【发布时间】:2011-08-05 15:08:38
【问题描述】:
我想 git push 到服务器 repo,然后 post-update 钩子会拉最新的 repo 到部署文件夹,然后重新启动守护进程。
但 git 用户无法访问部署文件夹,也无法重新启动守护进程。
如何将 git push 部署为 heroku。
【问题讨论】:
标签: linux git permissions gitosis
我想 git push 到服务器 repo,然后 post-update 钩子会拉最新的 repo 到部署文件夹,然后重新启动守护进程。
但 git 用户无法访问部署文件夹,也无法重新启动守护进程。
如何将 git push 部署为 heroku。
【问题讨论】:
标签: linux git permissions gitosis
您可以使用与 Heroku 上的推送类似的机制:基于 ssh 的操作。
您在服务器端的 git 用户(即运行 post-update 挂钩的 git 用户)会通过 rsh 调用部署脚本,这意味着该 git 用户帐户具有:
$HOME/.ssh/authorized_keys 上发布的公钥(即能够访问部署文件夹并拥有守护进程的用户)$HOME/.ssh中)【讨论】:
ssh anotherUser@server mycommand。如果在服务器上,git 用户由于某种原因无法访问文件夹或重新启动守护程序,则需要找到正确的用户,并以该用户身份 ssh 命令。我不知道为什么 git 用户在您的情况下无权访问您的资源,但我提供 ssh 命令作为解决方法。