【问题标题】:Improving speed of checkout from git (from github)提高 git 结账速度(来自 github)
【发布时间】:2012-04-03 13:57:29
【问题描述】:

我在 Windows 环境中使用 git 和 TeamCity v6.0。

由于 IO 问题,我刚刚从服务器端结帐切换到代理结帐,但是...

初始结帐变得非常缓慢,从大约一分钟到超过 45 分钟。克隆 repo 后一切正常。我可以调整代理上的一些配置来改进它吗?感谢您提前回复。

我看到的是在代理上创建的初始 git 文件,然后有很长的停顿,然后我得到了所有数据。我可以从进程资源管理器中看到 git 似乎做的很少,并且没有明显的限制来源。

【问题讨论】:

    标签: git teamcity teamcity-6


    【解决方案1】:

    可能导致速度变慢的一件事是与代理端结帐一起使用的 java ssh 实现,将其关闭设置一个agent propertyteamcity.git.use.native.ssh=true

    您还可以设置代理属性teamcity.git.use.local.mirrors=true,在这种情况下,TeamCity 将创建您的存储库的裸克隆,并将从该裸克隆而不是 github 更新构建目录,即初始克隆将只执行一次。

    【讨论】:

    • 我试一试,让你知道我的进展如何。
    • @JamesWoolfenden 你过得怎么样?
    • 没有任何帮助,不幸的是我们被困住了。
    • @JamesWoolfenden 甚至本地镜像也没有帮助?这很奇怪,因为镜像只是在同一台机器上从一个文件夹克隆到另一个文件夹。
    • 每次我编辑 vcs 设置时,TC 都会重新创建 repo。因此,调查成为一种极其昂贵的浪费时间。我看到了 10%-20% 的改进,但仍然需要 ~ 小时来同步 repo。一旦我有了回购,进一步的结账就可以了。不快。
    【解决方案2】:

    如果在另一个配置上很快,那你的问题不是git或github,而是跑进机器的管道大小。

    如果您在云中使用 TeamCity,则需要与 JetBrains 讨论他们的带宽。如果在本地,请与您的系统管理员联系。

    【讨论】:

    • 嗨,马特,没有在云中使用 TC。代理上可用的管道与以前的服务器相同。
    • 奇数。它们在同一个网段上吗?可能防火墙配置不同。
    • 很奇怪。 ping 从服务器到 repo 的外观如何?可能是 DNS 有问题。
    • 两者都以相同的方式锁定 no 。我希望这与 repo 大小或次优 vcs 设置有关。
    • 最终我们从 github 转移到了本地 git,这很有帮助,并不是 github 本身的问题,只是它是一个远程仓库。
    猜你喜欢
    • 2011-05-03
    • 2014-07-17
    • 1970-01-01
    • 2015-06-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多