$commitMessage = 'Auto commit from admin panel '.date('d.m.Y H:i:s', time());
chdir(__DIR__.'/../../../..');
$res[] = shell_exec('git add --all 2>&1');
$res[] = shell_exec('git commit -a -m "'.$commitMessage.'" 2>&1');
$res[] = shell_exec('git push origin master 2>&1');
$res[] = shell_exec('git status 2>&1');
git push命令后的输出: 主机密钥验证失败。致命:无法从远程存储库读取。请确保您拥有正确的访问权限并且存储库已存在。
但在我运行以下命令之前:
sudo -u www-data ssh-keygen -t rsa
sudo chown www-data:www-data -R ~/.ssh/known_hosts
sudo chown www-data:www-data -R /project
(在哪里找到.git目录)
将ssh密钥添加到bitbucket ssh密钥后(不用于部署)。
答案 0 :(得分:1)
此错误表示您要连接的域的主机密钥(我认为,bitbucket,来自您的评论)已更改。它的关键是不同的,而不是你的。
我要检查他们最近是否更改了主机密钥,如果有,您可以删除旧密钥
$ ssh-keygen -R bitbucket.org
但要小心,未知的主机密钥可能意味着中间人攻击。所以在做这件事之前,请确保它真的是bitbucket的关键。