欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 科技 > 能源 > GIT ---- 解决【fatal: Authentication failed for】

GIT ---- 解决【fatal: Authentication failed for】

2025/4/30 4:10:56 来源:https://blog.csdn.net/m0_38082783/article/details/146931775  浏览:    关键词:GIT ---- 解决【fatal: Authentication failed for】

1. 报错

remote: Support for password authentication was removed on August 13, 2021.remote: Please see https://docs.github.com/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

2. 错误解释

GitHub 自 2021 年 8 月 13 日起不再支持密码认证,你需要采用其他认证方式,比如使用个人访问令牌(Personal Access Token)或者 SSH 密钥。

3. 解决办法

  1. 使用个人访问令牌(Personal Access Token);
  2. 使用 SSH 密钥。

4. 使用个人访问令牌(Personal Access Token)

4.1 生成个人访问令牌
  1. 登录你的 GitHub 账号,点击右上角的头像,选择 “Settings”。
  2. 在左侧菜单中,点击 “Developer settings”。
  3. 选择 “Personal access tokens”,然后点击 “Generate new token”。
  4. 给令牌命名,选择需要的权限(一般克隆仓库选择 repo 权限即可),设置令牌的过期时间。
  5. 点击 “Generate token” 生成令牌,注意要及时保存这个令牌,因为页面刷新后就无法再次查看。
4.2 使用令牌进行认证

在命令行中,当你进行 git push 或者 git clone 操作时,将原来使用的密码替换为个人访问令牌。
例如,克隆仓库时:

git clone https://github.com/xxx/xxx.git

在输入密码的提示处,输入你刚才生成的个人访问令牌。

4.3 更新本地仓库的认证信息(可选)

如果你之前已经克隆了仓库,并且使用的是旧的认证方式,可以通过以下命令更新认证信息:

git remote set-url origin https://<your-github-username>:<your-personal-access-token>@github.com/xxx/xxx.git

将 your-github-username 替换为你的 GitHub 用户名, your-personal-access-token 替换为你生成的个人访问令牌。

5. 使用 SSH 密钥

5.1 生成 SSH 密钥

打开终端,输入以下命令生成 SSH 密钥:

ssh-keygen -t ed25519 -C "your_email@example.com"

将 your_email@example.com 替换为你在 GitHub 上注册的邮箱地址。按照提示完成密钥生成过程,生成的密钥默认存储在 ~/.ssh/id_ed25519 和 ~/.ssh/id_ed25519.pub 。

5.2 添加 SSH 密钥到 GitHub
  1. 复制公钥内容:
cat ~/.ssh/id_ed25519.pub
  1. 登录 GitHub,点击右上角的头像,选择 “Settings”。
  2. 在左侧菜单中,点击 “SSH and GPG keys”。
  3. 点击 “New SSH key”,将复制的公钥内容粘贴到 “Key” 字段,给密钥命名,然后点击 “Add SSH key”。
5.3 使用 SSH 地址克隆仓库
  1. 将原来使用的 HTTPS 地址替换为 SSH 地址进行克隆:
git clone git@github.com:xxx/xxx.git
  1. 删除原来的远程库,添加新的 SSH 地址:
git remote remove origin
git remote add origin git@github.com:xxx/xxx.git
git push -u origin master -f

完美解决!!!

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词