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

Git Push无限挂起如何诊断?已尝试多种方案仍未解决

诊断Git Push无限挂起的调试方法

1. 启用Git内置调试追踪

通过设置Git环境变量,获取推送过程的详细内部操作日志:

  • 基础流程追踪:GIT_TRACE=1 git push,输出Git执行的每一步命令和关键流程节点
  • 数据包交互追踪:GIT_TRACE_PACKET=1 git push,显示与远程仓库的所有网络数据包交互,包括推送完成后的会话细节
  • 全量操作追踪:GIT_TRACE_ALL=1 git push,输出Git内部所有操作的完整日志,适合深度定位卡住的环节

2. 针对传输协议的专项排查

根据你使用的GitHub访问协议(SSH/HTTPS),分别执行对应命令:

  • SSH协议:测试SSH连接的完整交互:ssh -vT git@github.com,检查认证完成后是否出现会话挂起,这可能是推送后SSH通道未正常关闭导致的
  • HTTPS协议:启用curl verbose日志:GIT_CURL_VERBOSE=1 git push,查看HTTPS请求的完整流程,包括服务器响应后的后续操作

3. 简化测试场景定位问题

  • 推送空提交:git commit --allow-empty -m "debug test push",执行推送,排除因提交内容导致的远程处理异常
  • 明确指定远程分支:git push origin <你的分支名>,避免默认分支设置带来的额外逻辑干扰

4. WSL环境特定检查

  • 检查代理配置:执行echo $HTTP_PROXY $HTTPS_PROXY,确认是否存在错误的代理设置导致网络挂起
  • 跨环境对比测试:在Windows原生Git环境中克隆仓库并推送,验证是否为WSL环境特有的问题

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.20 04:25:01