You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在Windows子系统Ubuntu中推送GitHub时登录凭证错误求助

解决GitHub密码登录失败问题

GitHub在2021年就已停止支持通过账号密码直接使用HTTPS协议进行Git操作,这是你遇到登录失败的核心原因,和密码修改、Git版本无关。下面是两种可行的解决方法:

方案1:使用个人访问令牌(PAT)替代密码

  1. 登录GitHub账号,依次进入「Settings」→「Developer settings」→「Personal access tokens」→「Tokens (classic)」
  2. 点击「Generate new token」,设置令牌名称、有效期,勾选repo权限(若有其他需求可额外勾选),生成后务必复制保存令牌内容(页面关闭后无法再次查看)
  3. 执行git push时,在用户名输入框填写你的GitHub用户名,密码输入框粘贴刚才生成的PAT,回车即可完成推送

也可以直接修改远程仓库URL,将用户名和PAT嵌入其中(注意此方式会把PAT存储在本地,存在安全风险,谨慎使用):

git remote set-url origin https://<你的GitHub用户名>:<你的PAT>@github.com/nessed/lmc-website1.git

修改后再次执行git push -u origin main就不会再弹出密码输入提示。

方案2:使用SSH密钥(更安全,推荐)

  1. 在Ubuntu终端生成SSH密钥:
ssh-keygen -t ed25519 -C "你的GitHub绑定邮箱"

全程按回车使用默认配置即可,生成的公钥文件路径为~/.ssh/id_ed25519.pub
2. 查看并复制公钥内容:

cat ~/.ssh/id_ed25519.pub
  1. 登录GitHub,进入「Settings」→「SSH and GPG keys」→「New SSH key」,粘贴公钥内容,设置名称后保存
  2. 修改本地仓库的远程URL为SSH地址:
git remote set-url origin git@github.com:nessed/lmc-website1.git
  1. 测试SSH连接是否成功:
ssh -T git@github.com

若看到提示Hi nessed! You've successfully authenticated, but GitHub does not provide shell access.,说明配置完成,此时执行git push -u origin main即可正常推送。

内容的提问来源于stack exchange,提问作者Ali Abid

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.01 12:40:35