Git推送权限被拒绝(公钥),但已成功验证
我想用ssh将我的提交推送到github。我明白了 您已成功验证 运行后的消息Git推送权限被拒绝(公钥),但已成功验证,git,github,ssh,Git,Github,Ssh,我想用ssh将我的提交推送到github。我明白了 您已成功验证 运行后的消息ssh-Tgit@github.com命令,但当我要推送提交时,会出现以下错误: 权限被拒绝(公钥)。 致命:无法从远程服务器读取 存储库 请确保您拥有正确的访问权限和存储库 存在 我运行ssh add-l命令 4096 SHA256:SREQ0/2G0mT+UxUmpLWmkMramBcFxnl+onFyXgwFENk~/.ssh/work2_rsa(rsa)4096 SHA256:gKPZ1Hxzc6eZ/Nsgn
ssh-Tgit@github.com
命令,但当我要推送提交时,会出现以下错误:
权限被拒绝(公钥)。
致命:无法从远程服务器读取
存储库
请确保您拥有正确的访问权限和存储库
存在
我运行ssh add-l
命令
4096 SHA256:SREQ0/2G0mT+UxUmpLWmkMramBcFxnl+onFyXgwFENk~/.ssh/work2_rsa(rsa)4096 SHA256:gKPZ1Hxzc6eZ/NsgnoPaJsGbdWgQV54bYAXaTym3PfY~/.ssh/work3_rsa(rsa)
我运行git remote-v
得到
origin git@github.com:H-Ghadirian/UdacitySillySong.git (fetch)
origin git@github.com:H-Ghadirian/UdacitySillySong.git (push)
sillySong git@github.com:H-Ghadirian/UdacitySillySong.git (fetch)
sillySong git@github.com:H-Ghadirian/UdacitySillySong.git (push)
我读书。这与我的问题非常相似,但是sudo
没有解决我的问题
我还运行了git push-u origin master
,得到了相同的错误:
权限被拒绝(公钥)
我也读过,但我的公钥在.ssh文件夹中,这不是我的情况
我读了这一页:然后全部检查。我错过什么了吗
我该怎么办
MacOS:塞拉
git版本2.13.5(苹果git-94)
如上所述,我将config
文件添加到我的.ssh
文件夹并添加
Host *
AddKeysToAgent yes
UseKeychain yes
IdentityFile ~/.ssh/work2_rsa
查看它。首先检查
git remote-v
返回的内容:
- 它需要是你自己的回购协议,或者你是它的合作者
- 它需要是正确的ssh url
git@github.com:/
(而不是https)
由于
~/.ssh/config
中有一个sshconfig
文件,ssh可能需要一个不同的URL
我使用sudo
运行命令并多次检查repo
您没有运行
sshgit@github.com
使用sudi,这意味着您的推送命令也不需要sudo
。当您运行ssh add-l
时会发生什么?您是否确保您拥有正确的访问权限并且存储库存在?@Buccleuch在ssh add-l
之后,我得到4096个SHA256:SREQ0/2G0mT+uxumplwmkmarambcfxNL+onFyXgwFENk~/.ssh/work2\u rsa(rsa)4096 SHA256:gKPZ1Hxzc6eZ/NsgnoPaJsGbdWgQV54bYAXaTym3PfY~/.ssh/work3_rsa(rsa)@EdwardThomson你是什么意思?我使用sudo
运行命令并多次检查repo。是否以root(sudo
)身份运行git?我认为你做错了,这不必要。在任何情况下,检查git是否使用您在执行SSH-T
时使用的SSH。看起来git没有相同的SSH配置。例如,检查GIT\u SSH
环境变量和相关的配置设置。我运行此命令并将其添加到问题中。请告诉我下一步该怎么做?我运行git push-u origin Master时仍然会出现相同的错误。我把它添加到我的question@HamedGhp1或p2是私人回购协议?我在@HamedGh中没有看到它们~/.ssh文件夹中是否有名为“config”的文件?(你使用的是Windows、Mac、Linux吗?你使用的是什么版本的git?)