![](/img/trans.png)
[英]ssh -T git@github.com: You've successfully authenticated | sudo git pull: Permission denied (publickey)
[英]Git push permission denied (publickey) but successfully authenticated
我想用 ssh 将我的提交推送到 github。我得到
您已成功通过身份验证
运行ssh -T git@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
并得到同样的错误:
权限被拒绝(公钥)。
我还阅读了权限被拒绝(公钥)。 致命:远程端意外挂断 git 拉但我的公钥在.ssh 文件夹中,那不是我的情况
我读了这个页面: 错误:权限被拒绝(公钥)并检查所有。 我错过了什么?
我应该怎么办?
苹果操作系统:塞拉利昂
git 版本2.13.5 (Apple Git-94)
正如这个链接所描述的,我将config
文件添加到我的.ssh
文件夹中并添加
Host *
AddKeysToAgent yes
UseKeychain yes
IdentityFile ~/.ssh/work2_rsa
给它。
首先检查git remote -v
确实返回的内容:
git@github.com:<you>/<yourRepo.git>
为了清楚起见,您需要首先在GitHub上创建远程仓库:推送到不存在的仓库会产生该错误。
通常,ssh url不工作意味着所述URL不是按照ssh期望的方式编写的。
由于~/.ssh/config
中的ssh config
文件,ssh可能会期望不同的URL。
我用
sudo
运行命令并多次检查repo。
你没有用sudi运行你的ssh git@github.com
,这意味着你的push命令也不需要sudo
。
仔细检查您的 git 配置core.sshCommand
是否符合预期。
在这种情况下,我还通过将我的.gitconfig
从C:\Users\<User>\.gitconfig
到 WSL 中的~/.gitconfig
而结束了这种情况,但没有意识到沿着路径复制到 ssh 可执行文件。 在 WSL 中,该配置隐藏了默认设置; 默认应该运行。
所以我不得不跑
git config --global --unset core.sshCommand
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.