git - 如何使用个人访问令牌克隆、拉取和推送存储库?
问题描述
今天 GitHub 给我带来了一种推送、克隆或拉取 repo 的新方法,让我大吃一惊
当我尝试推送我的项目时,我收到以下错误消息:
remote: Password authentication is temporarily disabled as part of a brownout. Please use a personal access token instead.
remote: Please see https://github.blog/2020-07-30-token-authentication-requirements-for-api-and-git-operations/ for more information.
fatal: unable to access 'https://github.com/barimehdi77/Philosophers.git/': The requested URL returned error: 403
经过多次搜索,我罚款 GitHub 添加了一个名为Personal access tokens
但我可以使用它的新安全更新?
解决方案
您必须使用 SSH 密钥。为每台计算机创建一个并将它们全部注册到您需要访问的存储库中。这样做可以让您通过计算机删除访问计算机。
在 Github 中配置好 SSH 密钥后,您可以阅读本文来设置个人访问令牌。
UPDATE它告诉您如何更改文档中的令牌
在命令行上使用令牌
获得令牌后,您可以在通过 HTTPS 执行 Git 操作时输入它而不是密码。
例如,在命令行中,您将输入以下内容:
$ git clone https://github.com/username/repo.git <--- HTTPS, not SSH
Username: your_username
Password: your_token <-------- THE TOKEN, not your password
个人访问令牌只能用于 HTTPS Git 操作。如果您的存储库使用 SSH 远程 URL,则需要将远程从 SSH 切换到 HTTPS。
如果系统未提示您输入用户名和密码,则您的凭据可能会缓存在您的计算机上。您可以更新钥匙串中的凭据,用令牌替换旧密码。
您可以使用 Git 客户端缓存您的 PAT,而不是为每个 HTTPS Git 操作手动输入您的 PAT。Git 会将您的凭据临时存储在内存中,直到过期间隔过去。您还可以将令牌存储在 Git 可以在每次请求之前读取的纯文本文件中。更多信息请参阅“在 Git 中缓存您的 GitHub 凭证”。
还找到了一个很好的视频演练,可能有助于弄清楚一些事情。
推荐阅读
- pbs - 如何使用 PBS 调度程序将 python 用作提交脚本?
- firebase - Firebase - 获取没有我投票的帖子
- python - 如何使用 pyinstaller 从 4 个 python 脚本和图像(不是图标)构建可执行文件?
- javascript - 具有唯一 URL 的 Flask 站点上的动态加载
- python - 使用 bs4 解析 utf-8 编码页面中的特殊字符的问题
- c++ - 如何使用参数初始化作为模板参数给出的类
- python - 第一次迭代后内部 for 循环被忽略,外部 for 循环工作得很好
- typescript - 打字稿:如何键入具有不同类型的未知大小的元组?
- laravel - 用于子域 API 的 Laravel CORS
- css - 覆盖 CSS 问题