2

这是我第一次尝试使用 GitHub 服务挂钩自动部署到我的服务器;在慢慢地克服每一个障碍之后,看起来最后一个障碍就是让我陷入困境的那个。

我的 git 存储库到我的 Web 服务器的初始克隆是通过 SSH 完成的,我很确定这与我现在的问题有关。我当前的脚本是基本的:

<?php 
    echo(shell_exec('git pull 2>&1')); 
?>

但它返回“权限被拒绝(公钥)。致命:远程端意外挂断”;我知道这是脚本未能放入我创建的 SSH 密码短语的地方。我尝试研究如何克服它,但我什至不知道这些是否是正确/最安全的事情。

那么这可以修改为从这里开始工作,还是我需要回溯几个步骤并从使用 SSH 开始?

谢谢

4

2 回答 2

0

您可以尝试替换(在您的 git.config 文件中)

ssh://github.com/<username>/<project>.git 

或者

https://github.com/<username>/<project>.git

git@github.com:<username>/<project>
于 2013-08-16T09:34:27.230 回答
0

Apache 可能以不同于您通常通过 CLI 运行 git 的用户身份运行。您可能需要将.ssh/id_rsa文件从复制/home/regularuser//home/webuser/.

于 2013-08-16T15:21:49.973 回答