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

如何配置GitHub客户端身份验证?上传项目遇认证错误求助

GitHub身份验证配置及「Requires authentication」错误解决指南

嘿,作为经常帮开发者搞定GitHub认证问题的老玩家,我来一步步帮你解决这两个问题——先教你正确配置客户端身份验证,再搞定你上传项目时碰到的「Requires authentication」错误。

一、配置GitHub客户端身份验证

现在GitHub已经不支持用密码直接认证了,咱常用的两种方式是个人访问令牌(PAT)和SSH密钥,新手优先推荐PAT,操作更简单。

方法1:个人访问令牌(PAT)新手友好

第一步:生成你的专属PAT

  1. 登录GitHub账号,点击右上角头像 → 「Settings」 → 「Developer settings」 → 「Personal access tokens」 → 「Tokens (classic)」
  2. 点击「Generate new token」,给token起个好记的名字(比如“笔记本Git认证令牌”),然后勾选权限——至少要勾repo(仓库读写权限),其他权限按需选就行
  3. 拉到页面底部点「Generate token」,一定要立刻复制这个token并存到安全的地方!离开这个页面后就再也看不到了,丢了只能重新生成。

第二步:在本地Git里配置PAT

当你第一次执行git push或者git pull时,Git会弹出框让你输用户名和密码:

  • 用户名填你的GitHub账号名
  • 密码就填刚才生成的PAT

要是不想每次都输,可以让Git记住凭据:

# 全局设置,让Git临时记住凭据(默认15分钟,可调整时长)
git config --global credential.helper cache

# 或者让Git永久记住(会存在系统的凭据管理器里,比如Windows的凭据管理器、macOS的钥匙串)
git config --global credential.helper store

方法2:SSH密钥适合频繁用Git的用户

如果你经常和仓库打交道,用SSH密钥更省心,不用每次输凭据。

第一步:生成SSH密钥

打开终端(Windows用Git Bash),运行这条命令,把邮箱换成你GitHub绑定的邮箱:

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

按回车一路默认就行,不用设置密码(当然,要是追求更高安全也可以设)。

第二步:把公钥传到GitHub

  1. 查看生成的公钥内容:
    # macOS/Linux直接运行
    cat ~/.ssh/id_ed25519.pub
    # Windows用Git Bash的话也是这条命令
    
  2. 复制输出的全部内容,回到GitHub → 右上角头像 → 「Settings」 → 「SSH and GPG keys」 → 「New SSH key」
  3. 粘贴公钥,给它起个名字(比如“笔记本SSH密钥”),点击「Add SSH key」就搞定了。

第三步:验证SSH连接

在终端里运行:

ssh -T git@github.com

要是看到类似Hi 你的用户名! You've successfully authenticated, but GitHub does not provide shell access.的提示,说明配置成功啦!

二、解决「Requires authentication」错误

你说笔记本也碰到同样的问题,大概率是本地Git没配置对认证信息,或者仓库地址类型和认证方式不匹配,咱一步步排查:

  1. 先看仓库的远程地址类型
    进入本地项目文件夹,打开终端运行:

    git remote -v
    
    • 如果是HTTPS地址(比如https://github.com/你的用户名/仓库名.git):
      先确认你之前输的用户名和PAT是不是正确的,要是之前输错过,先重置一下全局用户名和邮箱:
      git config --global user.name "你的GitHub用户名"
      git config --global user.email "你的GitHub绑定邮箱"
      
      然后重新执行git push,这次输入正确的用户名和PAT就行。
    • 如果是SSH地址(比如git@github.com:你的用户名/仓库名.git):
      检查一下刚才的SSH密钥是不是正确加到GitHub了,另外Windows用户可以看看SSH代理有没有启动(一般Git Bash里会自动启动,要是没启动可以运行ssh-agent -s)。
  2. 重置本地的Git凭据(如果之前输错过)

    • Windows:打开「控制面板」→「用户账户」→「凭据管理器」→「Windows凭据」,找到GitHub相关的条目删掉,然后重新push输入正确的PAT。
    • macOS:打开「钥匙串访问」,搜索“GitHub”,删掉相关条目,重新push。
    • Linux:删掉~/.git-credentials文件,重新push输入凭据。
  3. 确认仓库权限
    检查一下你要上传的仓库,你是不是仓库的所有者,或者有没有被添加为协作者——要是别人的仓库,得让对方给你开写入权限才行。

内容的提问来源于stack exchange,提问作者Mountain Man

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.21 07:53:22