繁体   English   中英

从 EC2 ubuntu 推送到 github

[英]Push to github from EC2 ubuntu

当我运行以下命令时,它似乎成功了:

$ 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

有人可以帮忙吗?

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

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

ssh -T git@github.com

再次为这个用户工作,尝试再次克隆回购协议。 如果可行,请检查您是否可以推动它。

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

我在我的 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

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

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM