如何解决Git推送到GitHub时出现的RPC失败(HTTP 400)错误?
解决Git推送GitHub时的HTTP 400及断开连接错误
可能的原因与对应解决步骤
1. 核对远程仓库URL正确性
- 执行命令查看当前远程仓库地址:
git remote -v - 确认HTTPS格式URL是否存在拼写错误(如仓库名大小写、用户名错误);SSH格式URL需检查本地是否配置有效SSH密钥。
- 若URL有误,更新远程地址:
git remote set-url origin <正确的仓库URL>
2. 验证GitHub凭据有效性
- HTTPS方式推送时,检查本地存储的用户名、密码(或个人访问令牌PAT)是否有效:
- Windows可在「凭据管理器」、Mac在「钥匙串访问」、Linux查看
~/.git-credentials文件确认凭据状态。 - 使用PAT的话,确保令牌拥有
repo权限且未过期,重新生成后推送时输入新令牌作为密码。
- Windows可在「凭据管理器」、Mac在「钥匙串访问」、Linux查看
3. 排查代理配置干扰
- 查看当前Git代理设置:
git config --global --get http.proxy git config --global --get https.proxy - 若存在代理配置,尝试临时取消后重试推送:
git config --global --unset http.proxy git config --global --unset https.proxy
4. 强制使用HTTP/1.1协议
- 部分环境下HTTP/2协议会引发连接问题,强制切换到HTTP/1.1:
git config --global http.version HTTP/1.1 - 执行后重新尝试推送代码。
5. 检查提交文件是否超限或存在特殊内容
- 即使是新建仓库,若本地提交的文件中有超过GitHub单文件限制(100MB)的大文件,也会触发错误。
- 查看提交文件大小:
git ls-files -s | sort -k 2 - 若存在超大文件,用
git rm --cached <文件名>移除暂存,重新提交推送;后续可改用Git LFS管理大文件。
内容的提问来源于stack exchange,提问作者Ryder
相关产品推荐
相关产品推荐

