github身份验证解决方案

今天往github推送代码出现无法访问仓库的问题,账号密码也无法使用,弄了好久才解决,想着写一篇博客总结一下。

问题

在这里插入图片描述
一般出现OpenSSL的字码说明这是一个https加密协议,https在没有身份验证(登录)的情况下,是无法进行git操作的。

解决

出现这个报错的原因是前面与仓库建立连接时,用了https地址,https需要身份验证才可以进行其他git操作,所以解决这个报错有四种方法:

  1. 本地仓库与远程创建连接时,不要用https地址
    • 直接用ssh密钥(git地址)
      git是github内部自定义的通信协议,git操作不会被拦截
    • 将https改为http
      http属于未加密协议
  2. 如果用了https地址
    • 解除ssl验证
      用以下命令解除ssl验证,这样就会解除了https拦截(https = ssl + http)

      git config --global http.sslVerify false·
      
    • token验证身份
      验证步骤:

      1. 去github申请token(之前申请过且没过期,可以省略这一步)
      2. 登录验证身份

账号密码问题

在这里插入图片描述

As previously announced, starting on August 13, 2021, at 09:00 PST, we will no longer accept account passwords when authenticating Git operations on GitHub.com. Instead, token-based authentication (for example, personal access, OAuth, SSH Key, or GitHub App installation token) will be required for all authenticated Git operations.

大致意思就是说,现在已经不支持密码验证,就是无法再用密码方式去提交代码,请用personal access token代替。

申请token

  1. 点开GitHub主页的setting
  2. 点开Developer settings
  3. 找到Personal access tokens,选择第二个(Tokens(classic)),点击Generate new token,按照步骤申请即可
    a. 注意:scopes(范围)这里建议全选
    b. 生成的token需要自己保存起来
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

总结

  1. 如果本地和远程仓库关联时地址选用https,后续会出现很多麻烦,所以建议使用ssh密钥。
  2. 目前密码验证已被github官方移除,需要先去官网申请token,用token才能验证身份。
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值