Github SSH权限被拒绝部署密钥

时间:2017-03-27 18:57:01

标签: git ssh

我创建了一个新的repo,能够使用SSH克隆并提交所有内容。但是当我试图推动时,我得到以下错误:

ERROR: Permission to Ronin11/MealPlanr.git denied to deploy key
fatal: Could not read from remote repository.

Please make sure you have the correct access rights

使用:

ssh -T git@github.com

我能够验证我的ssh密钥是否正常工作。我不知道发生了什么。这只是前一天工作。几个月来我还没有碰过这些设置。 所有这些都是在Mac上使用终端。

帮助!

6 个答案:

答案 0 :(得分:3)

您提到您使用的是OSX。如果您使用的是10.12.2+,则可能是您的ssh配置存在问题。 Github的文档有关于此的说明。

https://help.github.com/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent/

具体而言,他们说将以下内容添加到~/.ssh/config

Host * AddKeysToAgent yes UseKeychain yes IdentityFile ~/.ssh/id_rsa

希望这有帮助

答案 1 :(得分:1)

您的密钥可能已已链接到一个存储库

尝试使用ssh -T -ai ~/.ssh/id_rsa git@github.com 找到有关的仓库。

所有详细信息在这里 https://help.github.com/en/articles/error-key-already-in-use

答案 2 :(得分:1)

解决方案1:

ssh-agent bash -c 'ssh-add ~/.ssh/id_rsa; your_git command'

在这种情况下,您必须通过每次都附加git命令来重复上述命令。我不建议这样做。

解决方案2:

ssh-add -D
ssh-add ~/.ssh/id_rsa

这两个命令将删除广告并添加用于单点登录的SSH密钥。

答案 3 :(得分:0)

对我来说,以下内容始终适用于GitHub push:

eval `ssh-agent -s`; ssh-add your_key; git push

答案 4 :(得分:0)

您的问题的可能答案是您使用的 deploy key 通常只有读取访问权限。如果它在某一阶段确实具有写访问权限,则可能有人将其改回只读。

答案 5 :(得分:0)

另一个可能是您的 id_rsa 私钥文件具有太广泛的权限,例如0644,错误被掩盖了。

限制权限:

chmod 400 ~/.ssh/id_rsa

注意:您需要将密钥重新添加到 ssh-agent

eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_rsa

再次测试:

ssh -T -ai ~/.ssh/id_rsa git@github.com