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

远程Ubuntu 20.04服务器无法克隆/拉取/推送公司私有GitHub仓库

问题排查解决步骤
  • 首先排查网络连通性与代理配置,你遇到的无报错卡住90%是网络链路问题而非凭证错误(凭证错误会直接返回403权限报错,不会长时间无响应):
    • 执行nc -zv github.com 443测试与GitHub 443端口的连通性,超时则说明服务器出口防火墙、路由策略或网络运营商层面限制了与GitHub的HTTPS连接
    • 依次执行git config --global --get http.proxy、git config --global --get https.proxy、env | grep -i proxy检查是否配置了无效代理,如果有残留代理配置,执行git config --global --unset http.proxy、git config --global --unset https.proxy清除
  • 清理无效的Git配置项:你当前~/.gitconfig的user段中token、password属于无效配置,Git不会从该位置读取验证凭证,直接删除这两行避免干扰
  • 清除残留的凭证缓存:
    • 执行git config --global credential.helper查看当前凭证存储方式
    • 若返回store,执行rm ~/.git-credentials删除存储的旧凭证
    • 若返回cache,执行git credential reject https://github.com清除缓存的旧凭证
  • 直接验证带凭证的访问逻辑:执行git clone https://<你的PAT>@github.com/company/repo.git,将PAT直接拼接在URL中测试,如果仍卡顿可确认是网络层面问题,和Git凭证逻辑无关
  • 替换协议临时规避:生成SSH密钥添加到你的GitHub账号后,使用SSH地址git clone git@github.com:company/repo.git测试,SSH协议走22端口,不受HTTPS链路问题影响,可临时解决推拉代码需求
  • 排查DNS与SSL问题:
    • 执行sudo systemd-resolve --flush-caches清空服务器DNS缓存,执行nslookup github.com检查解析的IP是否为正常GitHub节点,解析异常可修改/etc/resolv.conf添加公共DNSnameserver 8.8.8.8后重试
    • 执行curl -v -u <你的GitHub用户名>:<你的PAT> https://api.github.com/repos/company/repo测试API访问,如果curl也卡顿,完全确认是服务器到GitHub的HTTPS链路问题,联系服务器运维排查出口网络策略即可

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 01:45:03