gpt4 book ai didi

git - 可以SSH进入服务器但不能git push

转载 作者:行者123 更新时间:2023-12-02 14:19:10 24 4
gpt4 key购买 nike

我无法推送到存储在我的Amazon ec2实例上的远程git repo。

我的本地ssh config文件具有一个主机条目,如下所示:

Host ec2
HostName ec2-54-89-205-210.compute-1.amazonaws.com
User ec2-user
IdentityFile ~/.ssh/ec2TestB

因此,我可以运行命令 ssh ec2,我将成功连接到 ec2

接下来,我在 git repo文件夹中的 ec2上创建了一个 root,称为 testGitRoot。在本地计算机上,我创建了一个名为 git repotestGitLocal。然后,我将 ec2repo添加到 git remote add origin ec2user@ec2-54-89-205-210.compute-1.amazonaws.com:/root/testGitRoot(我也尝试过不带 ec2user@的部分。。不确定是否需要这样做)。

当我运行 git push origin master时,我得到:
Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

所以我的问题是我在这里缺少什么概念?如果我可以使用 ssh ec2通过ssh进行连接,那么为什么不能推送我的仓库?我不清楚的一件事是,我什至完全没有使用gitt_code进行git设置步骤。通常,我总是推送到github,在这种情况下,我将 ssh网址设置为我的 Remote 。在这种情况下,我只是将 ssh ec2设置为remote,而该URL只是 repo。因此,即使 ec2Domain:path/to/git/repo使用的是 git push origin master,我也不确定,如果不是,为什么在 ssh命令没有使用时似乎会故障转移公钥?

最佳答案

您使用用户ec2-user设置存储库,如ssh_config文件所示:

Host ec2
User ec2-user

但是您将 Remote 设置为使用其他用户名 ec2user:
git remote add origin ec2user@ec2 ...

您说ssh有效,但git无效。因此,git可能是用户名不正确的git。

要解决此问题,只需更改远程URL,使其具有正确的用户名:
git remote set-url origin \
ec2-user@ec2-54-89-205-210.compute-1.amazonaws.com:/root/testGitRoot

关于git - 可以SSH进入服务器但不能git push,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44874769/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com