1

当我运行以下它似乎成功:

$ sudo ssh -T git@github.com
Hi x! You've successfully authenticated, but GitHub does not provide shell access.

但是,当我sudo git push从我的回购中做一个时,它不起作用我得到

Permission denied (publickey).
fatal: The remote end hung up unexpectedly

有人可以在这里帮忙吗?

4

2 回答 2

0

您在 EC2 上运行它的事实根本不重要。您在这里面临 ssh 密钥设置不正确和/或最初使用错误用户克隆 repo 的问题。

无论你做什么,绝对不需要使用 sudo。您应该能够使用普通用户克隆 repo。如果这不起作用,请确保为该用户生成一个新的 ssh 密钥并将其添加到 repo。如果

ssh -T git@github.com

再次为该用户工作,请尝试再次克隆 repo。如果可行,请检查您是否可以推送它。

如果您仍然遇到问题,请确保您遵循了GitHub 提供的 Linux 安装指南。那里编写的所有内容也适用于没有图形前端的 Ubuntu 版本。

于 2012-05-23T05:42:49.197 回答
0

我在我的 AWS EC2 Ubuntu 实例上遇到了同样的问题,我最终通过这篇文的正确方向推动解决了这个问题。

对我来说发生的事情是可以root访问我试图克隆到的文件夹。

drwxr-xr-x 2 root root 4096 Apr 25 00:51 sites

因此,我必须执行一个sudo git clone ...命令,因为我没有作为默认用户对该文件夹的写入权限。

我需要做的就是让自己拥有对 /sites 文件夹的写入权限

sudo chown -R ubuntu /sites

这使我可以省略命令中的 sudo git clone...,它以用户身份运行 git 命令ubuntu

这为我修复了它,我认为这是因为我~/.ssh文件夹中的文件归 拥有ubuntu,并且必须是运行该命令的用户。

于 2015-04-25T01:03:29.460 回答