目录
问题
解决
步骤一、
步骤二、
步骤三、
步骤四、
步骤五、
步骤六、
问题
今天创建一个 github 新仓库,首次上传本地代码时,遇到了一个报错。但是,之前这样操作肯定是没有问题的,毕竟我可以保证用户名和密码都是正确的。目测判断是认证相关问题,具体报错信息如下:
remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
fatal: Authentication failed for 'https://github.com/liuzhenyilang/rtctest.git/'
报错截图如下:
解决
通过搜索相关资料发现,原来是 github 的认证策略发生了改变,在 2021年8月13日 的时候,用户名加密码的认证方式被去掉了,换成了 个人令牌(Personal Access Token)的校验方式。我说呢,怎么在我百分之百确认用户名和密码没有输入错误的情况下,怎么还是一而再再而三的提示我认证有问题。
好了,知道原因了,那就想办法解决吧。
if (英文好的小伙伴)
可以参考链接:About remote repositories - GitHub Docs
else
看文章后续内容;
解决上述问题的基本思想就是先创建一个个人令牌,然后在上传代码的时候用上它就搞定了。
其实,英文链接中讲的内容也是这个意思:
接下来,我们介绍一下具体的操作步骤。
步骤一、
首先,点击 github 仓库右上角的个人头像,选择“设置”(Settings),具体如下图所示:
步骤二、
在“设置”页面左侧的底部选择“开发者设置”(Developer setttings),如下图所示:
步骤三、
个人访问令牌选择“经典令牌”(Tokens(classic)),如下图所示:
然后,点击“生成新的访问令牌”按钮,再选择“生成经典令牌”,如下图所示:
步骤四、
先填写生成令牌的目的,然后选择令牌的有效期,最后勾选令牌的作用范围。
步骤五、
拿到个人令牌token后,如果是首次 clone 工程代码,可以使用如下命令:
git clone https://<token>@github.com/<*>/<*>.git
如果是在已经存在的工程中操作,可以先执行如下命令,再执行其他操作就没有问题了。
git remote set-url origin https://<token>@github.com/<*>/<*>.git
步骤六、
我们遇到的情况就执行上面的第二条命令,然后再上传代码,报错消息,具体输出结果如下:
Counting objects: 160, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (157/157), done.
Writing objects: 100% (160/160), 1.76 MiB | 336.00 KiB/s, done.
Total 160 (delta 20), reused 0 (delta 0)
remote: Resolving deltas: 100% (20/20), done.
To https://github.com/liuzhenyilang/rtctest.git
* [new branch] main -> main
Branch 'main' set up to track remote branch 'main' from 'origin'.
过程截图如下:
好了,至此,文章开头提到的问题就解决了。如果你也遇到了类似问题,不妨试试这个方法!Good Luck!
作者简介:😄大家好,我是 Data-Mining(liuzhen007),是一名典型的音视频技术爱好者,前后就职于传统广电巨头和音视频互联网公司,具有丰富的音视频直播和点播相关经验,对 WebRTC、FFmpeg 和 Electron 有非常深入的了解。同时也是 CSDN 博客专家(博客之星)、华为云享专家(共创编辑、十佳博主)、51CTO社区编辑、InfoQ 签约作者,欢迎关注我分享更多干货!😄