当前位置: 首页 > 科技观察

GitHub认证升级,不再支持密码认证,教你如何制作PAT

时间:2023-03-15 10:31:16 科技观察

转载本文请联系Java极客技术公众号。大家好,我是阿芬。最近在写文章提交到GitHub的时候,突然发现提交不了。仔细一看,原来GitHub是不支持密码认证的。熟悉GitHub的朋友都知道,除了SSH之外,还可以使用GitHub的仓库。除了通过HTTPS拉取,还可以使用拉取的方式,通过账号密码提交。阿芬以前的项目都是用HTTPS拉取的,现在不让用密码提交,突然就不能用了。提醒内容如下,可以看到2021-08-13将不再支持密码验证(没错!七夕前夕阿粉还在写文章)打开上面链接,我们可以看到原来早在2020年7月就有一篇文章说2021-08-13将不再支持密码验证,这不能怪别人。创建个人访问令牌由于不能使用,所以我们需要按要求创建个人访问令牌,打开GitHub官网,登录我们的账号,然后点击设置,进入开发者设置,点击右侧的生成新令牌.创建的时候我们可以选择过期多久,也可以设置不过期,但是不推荐。接下来我们可以选择运行这个token操作的范围,也就是一些权限控制。提交后,将创建个人访问令牌。这个时候,我们记得复制一下。页面提示如果不复制,就再也见不到了。虽然我们不能使用下面的方法,但是还是复制一下比较保险。如果没有复制,可以删掉重新创建,问题不大。授权GitHub的官方文档建议我们在使用HTTPS克隆代码时使用GitCredentialManagerCore来记录我们的凭证,https://docs.github.com/en/get-started/getting-started-with-git/caching-your-github-credentials-in-git,文章介绍了不同操作系统的安装方法。阿凡这边是macOS,按照下面的步骤操作。其他操作系统的朋友可以按照文档操作一遍。Git已经安装好了,所以这一步可以跳过,直接进入第二步即可。根据计算机环境和网络情况,第二步中的两个命令可能无法一次安装成功。阿芬的两个MBP,一个安装的很顺利,一个装了很多次,总是各种超时或者下载失败,要多试几次。遇到这种情况不要着急,多做几次就好了(考验人品的时候到了,实在不行就洗手再试),安装的时候过程中,我们会被要求输入开机命令。$brewtapmicrosoft/git$brewinstall--caskgit-credential-manager-core安装成功后,如下图所示。这个时候就安装好了。下一步,我们将重新提交刚才没有推送成功的commit。这时会弹出如下窗口向浏览器请求授权,我们点击登录浏览器即可。授权成功后,我们就可以完美的提交代码了,我们又可以愉快的写代码了(刚刚复制的personalaccesstoken这里确实没有用到,毫无疑问)。