$ ssh -T git@gitee.com
git@gitee.com: Permission denied (publickey).
今天在git命令窗口测试【码云】连不上,按照网上找的方法说是公钥配置的有问题,重新配置一遍还是有问题。
如果按照网上的那种配置方法搞不定,照我的方法配置基本就差不多了。
最后还是加了一个参数 -v ssh -T -v git@gitee.com 查看用以上命令访问【码云】具体做了哪些操作
ps: 大家调试shell 时老是报错,也可以加上一个-x 如 sh -x demo.sh就会列出执行脚本的一些信息
从上图可以看出,找的是默认的id_rsa
因为我配置了github和码云 将密钥是独立命名的 ,导致访问失败,红色为码云的密码,黄色为github的密钥
解决办法:
在密钥目录下新建一个文件:
vi config
# gitee
Host gitee.com
HostName gitee.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/gitee_id_rsa
# github
Host github.com
HostName github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/github_id_rsa
效果图:
20201028 系统重装,git拉取项目出问题
unable to negotiate with *.*.*.*: no matching key exchange methodfound. Their offer: diffie-hellman-group1-sha1
解决方法:在执行git pull/clone之前,输入:
export GIT_SSH_COMMAND='ssh -o KexAlgorithms=+diffie-hellman-group1-sha1'
这种方法每次打开git窗口,都要重新输入一次。
可以在~\.ssh的config文件下,添加内容如下
Host *.*.*.*
KexAlgorithms +diffie-hellman-group1-sha1