我正在建立一个带有 Digital Ocean Droplet 的 Laravel 网站。 这个过程是如此困难和令人沮丧,我失去了逻辑感...... 我连接了与 github 连接的 ssh 密钥,因为我尝试使用此代码来测试我的连接:
ssh -T [email protected]
以此作为回应:
> Hi (My name)! You've successfully authenticated, but GitHub does not
> provide shell access.
这样就连接好了。 但是,当我想将我的存储库克隆到我的在线 Droplet 中时。我收到错误:
[email protected]: Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
所以我不知道如何解决这个问题.. 我的数字海洋设置中的 ssh 密钥与我的 github ssh 设置中的相同。
有什么想法可以解决这个问题吗?
我自己找到了解决方案!
那么问题出在哪里?
我使用本地主机的 ssh 密钥作为克隆私有 github 存储库的访问密钥。这就是为什么我无法克隆到在线服务,因为该在线服务有它自己的特定 ssh 密钥。因此,在我的服务器内,我生成了一个 ssh 密钥并在 github 上注册了该密钥。当我尝试将我的存储库克隆到我的 Droplet 中时 一切都按其应有的方式进行。
你可以试试这个方法。
sudo mkdir -p /var/www/your_domain
sudo chown -R $USER:$USER /var/www/your_domain
your_domain
是所需的目录(公共)。您可以根据需要命名example.com
cd /var/www/your_domain
git clone git@remote-url
解决与权限相关的问题。