Github SSH部署密钥的权限被拒绝

2w2cym1i  于 2023-01-07  发布在  Git
关注(0)|答案(7)|浏览(239)

我创建了一个新的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上的终端。
救命!

3qpi33ja

3qpi33ja1#

对我来说,以下方法对GitHub推送总是有效的:

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

92vpleto2#

您的密钥可能已经链接到一个存储库
尝试使用ssh -T -ai ~/.ssh/id_rsa git@github.com查找相关的存储库。
此处显示所有详细信息https://help.github.com/en/articles/error-key-already-in-use

wooyq4lh

wooyq4lh3#

你提到你使用的是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
希望这能帮上忙

ne5o7dgx

ne5o7dgx4#

解决方案1:
第一个月
在这种情况下,你必须重复上面的命令,每次都要附加git命令,我不推荐这样做。
解决方案二:

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

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

o0lyfsai

o0lyfsai5#

还有一种可能是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
rslzwgfq

rslzwgfq6#

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

iyfamqjs

iyfamqjs7#

对于mac用户!
正如#sashaboulouds前面提到的,当你在ur终端运行这段代码时
$ ssh -T -ai ~/.ssh/id_rsa git@github.com
您将收到如下消息
"你好!你已经成功通过身份验证,但是GitHub不提供shell访问。"
如果您在用户名旁边看到任何项目名称(如userName/repositoryName),则您肯定使用了您公共ssh密钥来创建单个存储库。
解决办法是

  • 通过运行以下命令从终端/命令行复制公钥

$*目录号~/. ssh/标识号_rsa. pub *
然后转到你的github账户

  • 在"存储库名称"存储库中
  • 删除已附加的公钥
  • 在您的GitHub用户名帐户设置下
  • 单击SSH和GPG密钥
  • 添加新的SSH密钥
  • 填写标题并将公钥粘贴到提供的密钥区域
    • 测试一下**

run $ ssh -T -ai ~/.ssh/id_rsa git@github.com
如果你只在你的GitHub账户上看到这条消息,你已经成功地将公众作为一个整体分配给你的账户。

相关问题