【发布时间】:2019-03-21 12:20:02
【问题描述】:
我要做什么
我在 bitbucket 上有一个 git 存储库。从本地机器推送到存储库后,我想自动将主分支拉到我的网络空间。
到目前为止我做了什么
我使用 ssh 连接到我的服务器,创建了 ssh 密钥并在 github 上注册了公钥。 我创建了一个 .sh 脚本,它使用 ssh 拉出主分支 - 到目前为止,上帝 - 当我从命令行/putty 运行脚本时,一切正常
有什么问题
我想用 bitbucket 上的 webhook 触发 .sh 脚本(我可以提供一个 url)。为此,我在我的网络空间中创建了一个 .php 文件:
<?php
$output = shell_exec('./deploy.sh 2>&1');
echo $output;
我的 .sh 脚本如下所示:
#!/bin/bash
git pull git@bitbucket.org:dualmeta/test.git master
如前所述,使用 putty 运行 .sh 脚本非常有效。但是,如果我在浏览器中输入 .php 文件的 url,它会给我一个错误:
Host key verification failed.
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
我已经做了一些研究,发现很多人都有同样的问题。但是在我的情况下,我没有 root/sudo 访问权限,因为它是一个租用的网络空间,而不是我自己的虚拟服务器。
有没有机会让它工作?
【问题讨论】: