【发布时间】:2013-01-03 08:38:12
【问题描述】:
我使用 TortoiseHg 和 hg-git Mercurial 插件来与 Github 交互,根本不使用 Git,只使用 Hg。在 Github 上,我分叉了 pandas repo。我成功地将我的叉子克隆到我的电脑上。我想将原始 pandas 存储库添加为 Hg 中的 URL,因此我可以从该存储库中提取更改并将它们与我自己所做的任何更改集成。我在 TortoiseHg 的 URL 中添加了原始 pandas 存储库,名称为“upstream”。
但是,如果我尝试从原始上游 repo 中提取,Hg 会挂起很长时间,然后最终会发出“504 - 网关超时”错误。如果我直接克隆 pandas 存储库(而不是克隆它的 fork),我可以从中提取。
奇怪的是,这似乎并非所有 repos 都会发生。我用matplotlib repo 做了同样的过程(分叉,克隆分叉,然后尝试从原始库中提取),它似乎可以从原始存储库中提取。
更奇怪的是,如果我克隆原始 repo,然后将我的 fork 添加为额外的 URL,我可以从两者中提取。所以不知何故,在原始克隆期间设置的 URL 是可以的,但是手动将相同的 URL 设置为源不起作用。
这似乎表明问题出在 pandas repo 上。这可能吗? Github 上是否有一些设置可能会影响我从该回购中提取的能力?我该怎么做才能让它发挥作用?
【问题讨论】:
-
是否涉及代理服务器?如果是这样,很可能是代理服务器上的超时时间过低造成的。
-
@davidmc24:我没有使用代理服务器。此外,我不明白这如何解释它适用于一个 repo 而不是另一个 repo,或者如果我直接克隆原始 repo,我可以从完全相同的 URL 中提取。
-
我对代理服务器的猜测是基于错误代码,这似乎通常与某种形式的代理有关。如果涉及代理,则克隆和拉取之间的差异可能是由于所进行的网络调用的细微差异是否在超时范围内。同样,由于大小或对象组成的差异,此 repo 与其他 repo 之间的行为差异可能是可以解释的。
标签: mercurial github tortoisehg hg-git