Hexo连接GitHub时出现的SSH密钥更改为个人访问令牌问题
[TOC]
前言:
前几天写了几篇博客,一直都忘记上传到网站上,今天来整理时出现了以前不曾遇到的问题,刚开始只是不停的爆红:
当然这是没有上代理的老问题了,结果等我上了代理后仍然不行,但是这一次却没有爆红(原谅我一直在hexo d,却没有思考问题在哪里)
问题排查与探究:
我刚开始看中的是:
一直在找它的问题
The requested URL returned error: 403 |
找了一大堆,比较关键的观点都是让我将控制面板中的凭据管理器中的Windows关于GitHub的凭据删掉,再去git push等等。
搞了好久都未发现问题所在,直到我漫不经心的看到这两行话:
remote: Support for password authentication was removed on August 13, 2021. Please use a personal access token instead. |
这时我才发现这句话说的是密码凭证已经在2021.08.13被移除,请使用个人访问令牌(PAT),然后我就去访问它所提供的网址:
总结一下:它的意思是作为开发者必须使用PAT或者https
我之前一直使用的就是SSH密钥免密登录,就去找如何将SSH密钥转为PAT
GitHub不再支持密码验证解决方案:SSH免密与Token登录配置
但是这篇文章不太符合我的目的,并且有点牛头蛇尾的。
https://www.cnblogs.com/milton/p/15073368.html
按图索骥
在官网上讲解了如何去创建个人访问令牌(PAT),当然这些都比较容易,但是我还是不知道如何去转换啊?
末尾就很有用:
解决方案:
首先我点进 将远程 URL 从 SSH 切换到 HTTPS
这就很有用,我按照步骤来,但是我不明白本地仓库怎么搞,我反复搜寻,发现上面那篇有点牛头蛇尾的文章就是是将远程仓库以SSH的方式下载到本地,
我通过
这里我已经使用了https://,但是我一直以为我还是SSH clone,其实问题出在我的当前目录并不是本地仓库,
后面我这样:
下次对远程仓库执行 git fetch
、git pull
或 git push
操作时,您需要提供 GitHub 用户名和密码。 当 Git 提示您输入密码时,请输入您的个人访问令牌 (PAT)。 基于密码的身份验证对 Git 已弃用,使用 PAT 更安全。
官网上是这样解释的,但是我不知道如何进行git push or pull,我后来想明白我在Hexo上上传不就是push。
在命令行hexo工作目录使用hexo d,提示让我输入密码:
然后运行:
继续:
这就成功了!