ssh -T git@gitcode.com报错: Permission denied (publickey)

问题描述

  1. git push 报错:
git@gitcode.com: Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.
  1. ssh -T git@gitcode.com 报错:git@gitcode.com: Permission denied (publickey).

前置操作

window11

  1. 已在本地生成了ssh key ,自定义了路径: ssh-keygen -t rsa -C "youremail@example.com" -f ~/.ssh/id_rsa_gitcode
  2. 已将pub key 添加到了 gitcode.com
  3. 已将key 添加到本地: ssh-add ~/.ssh/id_rsa_gitcode
  4. 已启动 ssh agent 和 ssh server: win 搜索 服务 ,找到服务并设置自启动
    服务截图在这里插入图片描述

原因分析

本机有多个ssh key

解决办法

在 ~/.ssh 中添加一个文件 config(无后缀),内容如下:

# git@gitcode.com:xx/xx.git
Host gitcode.com
  User 自定义1
  HostName gitcode.com
  PreferredAuthentications publickey
  IdentityFile ~/.ssh/id_rsa_gitcode
  
# git@gitlabxx.xx.cn:xx/xx.git
Host gitlabxx.xx.cn
  User 自定义2
  HostName gitlabxx.xx.cn
  PreferredAuthentications publickey
  IdentityFile ~/.ssh/id_rsa_gitlab

再次git push 成功!

注意事项:

  • Host 别名 :别名信息最简单的是git@web:xx/xx.git中的web
  • HostName:要登录主机的主机名,真实的域名地址
  • User:登录名

ps: 该写法可能有安全隐患,暂未查到原因
因为在 ssh -T git@gitcode.com 会报错:

 ssh -T git@gitcode.com
Bad permissions. Try removing permissions for user: \\Everyone (S-1-1-0) on file C:/Users/dell/.ssh/config.
Bad owner or permissions on C:\\Users\\dell/.ssh/config

参考

git权限被拒绝(已添加公钥) 解决办法,亲测有效
Git 提示 Permission denied (publickey),如何才能解决?
windows下管理多个ssh-key,登录不同git账号

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值