通过 ssh 将本地 git 仓库推送到服务器

通过 ssh 将本地 git 仓库推送到服务器

所以我有一个本地存储库和一个安装了 git 的服务器和一个 git 用户。

我想将存储库发送(推送)到服务器。当我只是通过登录服务器时,ssh我必须指定我的 .pem 文件和密码。

下列:

sudo git push [email protected]:somerepo.git

抛出这个错误:

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

再次尝试另一个错误:

git push ssh://[email protected]:somerepo.git
ssh: Could not resolve hostname : Name or service not known
fatal: The remote end hung up unexpectedly

答案1

太多的问题需要准确的答案。

须藤 git 推送[电子邮件受保护]:som​​erepo.git

您确定这是一个有效的 IP 地址吗?
(这里 sudo 肯定是错误的。)

权限被拒绝(公钥)。

您的服务器似乎只允许通过公钥进行 ssh 连接。您创建了密钥对吗?你把公钥放在服务器上了吗?是否ssh-add将密钥添加到您的代理中?

git 推 ssh://[电子邮件受保护]:somerepo.git ssh:无法解析主机名:名称或服务未知

这是另一个主持人吗?它也包含一个存储库吗?似乎它根本不存在。

您是如何在服务器上创建存储库的?你能 ssh 进入服务器吗?

答案2

首先,确保 ssh 可以连接到服务器。然后,在服务器上创建一个裸存储库“mkdir repo”、“cd repo”、“git init --bare”。然后,您可以在您的计算机上执行“git push ssh:user@server:repo”。

相关内容