首页 > 解决方案 > 批处理响应:拨号 tcp:查找 gitlab.com:没有这样的主机

问题描述

如果我要推送一个小的私有仓库,一切都OK

Sepideh@DESKTOP-M232FOC MINGW64 /e/Test_gitlab (master)
$ git push -u origin --all
Enumerating objects: 3, done.
Counting objects: 100% (3/3), done.
Writing objects: 100% (3/3), 236 bytes | 78.00 KiB/s, done.
Total 3 (delta 0), reused 0 (delta 0)
To gitlab.com:abadpours/test.git
 * [new branch]      master -> master
Branch 'master' set up to track remote branch 'master' from 'origin'.

Sepideh@DESKTOP-M232FOC MINGW64 /e/Test_gitlab (master)
$ git push -u origin --tags
Everything up-to-date  

但是对于一个大型(1.94 GB)、启用 LFS 的私有存储库,我将拥有以下内容:

Sepideh@DESKTOP-M232FOC MINGW64 /e/MSc_Thesis (master)
$ git config lfs.https://gitlab.com/abadpours/msc_thesis.git/info/lfs.locksverify true

Sepideh@DESKTOP-M232FOC MINGW64 /e/MSc_Thesis (master)
$ git push -u origin --all
Connection to gitlab.com closed by remote host.
Uploading LFS objects:   0% (0/4), 62 MB | 109 KB/s, done
batch response: Post https://gitlab.com/abadpours/msc_thesis.git/info/lfs/objects/batch: dial tcp: lookup gitlab.com: no such host
error: failed to push some refs to 'git@gitlab.com:abadpours/msc_thesis.git'  

结果和昨天一样。有没有办法解决这个问题?

标签: gitgitlabgit-pushgit-pullgit-lfs

解决方案


您正在为远程存储库使用 SSH URL:git@gitlab.com:abadpours/xxx

这意味着您不关心 HTTP 代理。

但是 Git LFS 对象使用的是 HTTPS URL,这意味着,如果你是代理,你可能会遇到一些问题,比如git-lfs/git-lfsissue 1424

一个是我们不支持 socks5h,这是众所周知的 Go 语言的限制。http://另一个是如果代理不包含它,我们似乎会预先添加它,如果我们希望 SOCKS 支持工作,这可能不是一个好主意。

或:git-lfs/git-lfs问题 3551

我无法让 git lfs fetch 在我的公司代理后面工作。使用 env varhttp_proxygit.config http.proxy.

我用系统管理员查看了代理服务器日志,似乎 git-lfs 甚至没有处理代理,而是试图直接访问网络(因此出现 DNS 错误)。常规 git 和其他网络活动在此配置中运行良好。

在后一种情况下,如果代理配置( http://username:password@host.fr:8050) 未正确进行百分比编码


正如Drew Blessing在评论中添加的那样:

尝试通过 HTTPS 在不同位置克隆项目可能是一个很好的测试。
这将排除通过 443 - 连接到 GitLab.com 的一般问题git clone https://gitlab.com/group/project.git
如果这不起作用,那么肯定是网络,代理等有问题。


推荐阅读