跳到主要内容
极客日志极客日志面向AI+效率的开发者社区
首页博客我的书AI学习GitHub 精选镜像AI工具UI配色美学关于
搜索内容 / 工具 / 仓库 / 镜像...⌘K搜索
注册
博客列表
Shell / Bash大前端

Git 推送报错“密码认证不支持”?切换到 SSH 密钥方案

GitHub 停止支持账号密码进行 Git HTTPS 操作后,遇到验证失败错误需切换至 SSH 密钥方案。通过 ssh-keygen 生成 ed25519 类型密钥,上传公钥至 GitHub 设置页面,修改本地仓库远程地址为 SSH 格式,最后使用 ssh -T 验证连通性并完成首次推送。此方法可避免每次输入凭证,实现长期免密访问。

奶糖兔发布于 2026/3/29更新于 2026/10/27117 浏览
Git 推送报错“密码认证不支持”?切换到 SSH 密钥方案

问题背景

最近在新系统上进行 Git 操作时,可能会遇到 remote: Invalid username or token. Password authentication is not supported for Git operations 的错误。这是因为 GitHub 已不再支持使用账号密码进行 HTTPS 推送,建议改用 SSH 密钥来维持长期的安全连接。

生成 SSH 密钥

在终端执行以下命令生成密钥对:

ssh-keygen -t ed25519 -C "[email protected]"

参数 -t 指定密钥算法,这里选用 ed25519,相比传统 RSA 更安全且性能更优。按提示一路回车即可,私钥会保存在 ~/.ssh/id_ed25519。

将公钥添加到 GitHub

查看生成的公钥内容:

cat ~/.ssh/id_ed25519.pub

复制输出的全部内容,登录 GitHub 进入 Settings -> SSH and GPG keys -> New SSH key。粘贴到文本框中,自定义一个标题,密钥类型保持默认的 Authentication key,点击 'Add SSH key' 保存。

GitHub SSH Key Settings

修改远程仓库地址

回到本地仓库,将远程地址从 HTTPS 改为 SSH 格式:

git remote set-url origin [email protected]:username/reponame.git

请将 username 和 reponame 替换为你自己的用户名和仓库名称。这一步是为了让 Git 知道下次推送该走哪个通道。

测试连接与推送

先测试 SSH 是否配置正确:

ssh -T [email protected]

如果看到类似 Hi username! You've successfully authenticated... 的提示,说明配置无误。此时再进行首次推送:

git push -u origin master

参数 -u 用于建立本地分支与远程分支的关联,以后只需写 git push 或 git pull 即可,无需再输入冗长的命令或凭证。

目录

  1. 问题背景
  2. 生成 SSH 密钥
  3. 将公钥添加到 GitHub
  4. 修改远程仓库地址
  5. 测试连接与推送

更多推荐文章

查看全部
  • LRU 与 LFU 页面置换算法对比及 Golang 实现
  • 基于 Python+Playwright 的学术文献批量爬取与 PDF 整理
  • AI 大模型工程师职业前景与技术学习路径指南
  • 医疗 AI 败血症预测算法全流程实战与 Python 实现
  • WebVOWL:OWL 本体可视化入门与实践指南
  • Visual Studio 使用 GitHub Copilot 与 IntelliCode 辅助编码
  • 向日葵 MCP 集成 AI:无需额外设备支持多平台远程控制
  • 基于 Python 和 Ollama 搭建本地 AI 智能体 OpenClaw 指南
  • 在线考试系统的设计与实现
  • C++ 继承机制详解:从基础到多继承与组合
  • Kimi K2.5 开源模型发布:Agent 集群与视觉编程实测
  • 数据结构:栈与队列的 5 种实现(顺序栈、链栈、顺序队、优先级队列)
  • iOS 开发新系统兼容适配:UITabBar 液态玻璃效果与 WiFi 获取
  • OpenClaw 30+ 真实场景全拆解:从研发提效到企业级架构
  • 在昇腾 NPU 上部署 Llama 大模型实战与踩坑指南
  • Python 编程基础与实战应用指南
  • Llama-Factory 大模型微调工具实战指南
  • VSCode 配置 C++26 模块:三种主流包管理方案对比
  • VSCode 配置 Go 开发环境及必备工具清单
  • 基于 Spring Boot 与 Vue 的 Web 虚拟卡销售平台实战

相关免费在线工具

  • Base64 字符串编码/解码

    将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online

  • Base64 文件转换器

    将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online

  • Markdown转HTML

    将 Markdown(GFM)转为 HTML 片段,浏览器内 marked 解析;与 HTML转Markdown 互为补充。 在线工具,Markdown转HTML在线工具,online

  • HTML转Markdown

    将 HTML 片段转为 GitHub Flavored Markdown,支持标题、列表、链接、代码块与表格等;浏览器内处理,可链接预填。 在线工具,HTML转Markdown在线工具,online

  • JSON 压缩

    通过删除不必要的空白来缩小和压缩JSON。 在线工具,JSON 压缩在线工具,online

  • JSON美化和格式化

    将JSON字符串修饰为友好的可读格式。 在线工具,JSON美化和格式化在线工具,online