【问题标题】:Can't make 'git push' from cloned Github repository无法从克隆的 Github 存储库中进行“git push”
【发布时间】:2016-02-14 22:35:19
【问题描述】:

我登录 Github 并从那里克隆存储库。 然后我做了一些更正并提交了它们。 当我尝试使用此类命令将更改推送到服务器时

git push origin master

我得到关注

警告:为 IP 地址永久添加了 RSA 主机密钥 '192.30.252.129' 到他的已知主机列表。没有权限 (公钥)。致命:无法从远程存储库读取。

请确保您拥有正确的访问权限和存储库 存在。

在我的 Github 设置中,我看到以下内容

此存储库没有部署密钥

【问题讨论】:

  • @Holloway 我在 Git Bash 中完成了这些步骤。 'ls -al ~/.ssh' 命令显示三个 SSH 密钥: github_rsa github_rsa.pub known_hosts 然后我运行命令 eval $(ssh-agent -s) ssh-add ~/.ssh/github_rsa clip
  • 你有权限推送到仓库吗?是你的吗?
  • 不,这不是我的,但我有权限。
  • 存储库的所有者可能需要将您的密钥添加到他们允许的提交者列表中。

标签: git github


【解决方案1】:

问题是 git 在进行推送时正在寻找默认密钥文件,但您的密钥文件被称为不同的东西(github_rsa 而不是 id_rsa)。这本身不是问题,但如果您没有多个键,您可以重命名它(或创建一个符号链接)。

如果您有多个密钥,请查看this 问题。

您需要设置一个 ssh 配置文件(无论如何都非常有用)并使用它来指定要使用的密钥文件。类似的东西

Host github
    HostName github.com
    User git
    IdentityFile /home/whoever/.ssh/github_rsa

然后在你的推送命令/gitconfig 中使用github 而不是git@github.com

【讨论】:

  • 当我尝试“git push origin master”并输入密码时,我明白了! [rejected] master -> master (non-fast-forward) error: failed to push some refs to 'git@github.com:username/myproject.git' 提示:更新被拒绝,因为您当前分支的提示落后于提示: 它的远程对应物。在再次推送之前集成远程更改(例如提示:'git pull ...')。提示:有关详细信息,请参阅“git push --help”中的“关于快进的说明”。我做了'git pull'并重复'push'但得到了同样的信息。
  • 拉取比赛成功了吗?
  • 现在拉取成功完成,推送也成功。非常感谢。
猜你喜欢
  • 2016-10-09
  • 1970-01-01
  • 1970-01-01
  • 2016-08-24
  • 2019-09-16
  • 2021-01-28
  • 1970-01-01
  • 2021-09-01
  • 2018-11-23
相关资源
最近更新 更多