zoukankan      html  css  js  c++  java
  • gitlab 页面添加 sshkey后,git clone git@xxx.com:xx.git 任然提示需要输入密码的问题解决。解决debug1: send_pubkey_test: no mutual signature algorithm

    网上一般搜不到解决方案,千篇一律说的是 ssh-keygen -t rsa -C "xx@xx.com" ,然后把id_rsa.pub的内容复制,在网页上的setting里面粘贴添加到ssh keys里面,

    但对有的git服务器或者你的电脑操作系统,有时候光这么做却任然不行,提示需要输入密码git@xx.com's password:

    关键是git这个账号的密码并不是用户个人的账号,所以无法输入密码了。

    此时需要使用命令排除问题,命令行输入 ssh -Tv git@xx.com,  一定要带v才能显示debug信息,

    你会看到这条信息 debug1: send_pubkey_test: no mutual signature algorithm

    就是修改或新建"~/.ssh/config"文件,添加如下配置,实测有用:

    gitee.com 只是举个例子,实际是你们公司gitlab的域名,就是取git clone git@xx.com 中的xx.com

    这两行写在config文件中

    Host gitee.com  

    PubkeyAcceptedKeyTypes=+ssh-rsa

    例如我的电脑.ssh文件夹截图,C:\Users\ydf19\.ssh文件夹中自己新建config文件,写上上面内容就可以啦

    真的太坑了,如果不会排查问题的人会一筹莫展,因为网上99.99%的教程是只教你这么做:

    ssh-keygen -t rsa -C "xx@xx.com",然后把id_rsa.pub贴到网页上,这样做后有时候任然不行,你会一直怀疑自己复制错了,导致一直用错误的方式排查问题。
    例如我把id_rsa.pub添加到github可以,但是公司的gitlab一直不行,说民光这么做不一定够,要增加 config文件
     希望对有的人有帮助。
     
     
     
     
    我电脑是新换了个win11,网上教程一般只做这两步,ssh-keygen -t rsa -C "yangdf@akulaku.com" ,然后把id_rsa.pub贴到ssh keys页面里面。对github两步就可以了,但是我们的gitlab可能需要做第三步增加config文件。第三步增加config文件是对有的电脑系统而言,我的上个电脑不需要这么做。昨天换了个新win11系统电脑。
     
     

    参考文章: 
     https://blog.csdn.net/lindorx/article/details/111885764
    https://www.cnblogs.com/ice-image/p/15420411.html
    反对极端面向过程编程思维方式,喜欢面向对象和设计模式的解读,喜欢对比极端面向过程编程和oop编程消耗代码代码行数的区别和原因。致力于使用oop和36种设计模式写出最高可复用的框架级代码和使用最少的代码行数完成任务,致力于使用oop和设计模式来使部分代码减少90%行,使绝大部分py文件最低减少50%-80%行的写法。
  • 相关阅读:
    Web 前端开发中一些兼容性问题及其解决办法 (持续更)
    沈逸的IT专栏---shenyisyn
    程序员该做的事
    职场需要切忌的几点——《程序员,你伤不起》
    百度天气API接口
    C#简单音乐播放器ListBox歌单列表
    CentOS7 安装java(jre 1.8)
    CentOS7 系统安装与设置
    这个可以有,记录下
    在centos 7中让网卡自启动
  • 原文地址:https://www.cnblogs.com/ydf0509/p/15718955.html
Copyright © 2011-2022 走看看