gpt4 book ai didi

optimization - 我可以优化Mercurial克隆吗?

转载 作者:行者123 更新时间:2023-12-03 15:42:54 25 4
gpt4 key购买 nike

我的Mercurial克隆速度非常慢,大概是由于磁盘碎片造成的。有没有优化的方法?

显而易见的方法是创建一个新的克隆,然后将我的MQ,已保存的包,hgrc等复制到新的克隆并删除旧的克隆。但是似乎有人可能曾经遇到过这个问题,并且做了扩展才能做到这一点?

最佳答案

如果 list 变得特别大,则可能会导致性能降低。 Mercurial具有替代的存储库格式-generaldelta-通常可以生成较小的 list 。

您可以使用以下方法检查 list 的大小:
ls -lh .hg/store/*manifest*
要从generaldelta获得最大值:

  • 安装Mercurial 2.7.2或更高版本(2.7.2包括了对generaldelta中的一个错误的修复,可能会导致较大的 list 大小-但很有可能您不会在较早版本中遇到该错误)。
  • 执行hg --config format.generaldelta=1 clone --pull orig orig.gd

  • 这可以使 list 大小有所改善,但不能带来全部好处。
  • 执行hg --config format.generaldelta=1 clone --pull orig.gd orig.gd.gd

  • 克隆的克隆可能会大大改善 list 大小。这是因为当从generaldelta仓库中提取物品时,将对物品进行重新排序以优化 list 大小。

    作为generaldelta潜在好处的一个示例,我最近转换了一个约55000 SVN提交(使用hgsubversion进行了拉动)的仓库,再加上约1000 Mercurial提交/合并/移植等。原始仓库中的 list 约为1.4GB。第一个克隆中的 list 约为600MB。克隆的 list 中的 list 约为30MB。

    网上没有关于generaldelta的大量信息-在它成为默认格式之前,还有很多工作要做,但是对于许多项目来说效果很好。最初的几项Google搜索结果都包含一些信息,这些信息是从最初引入时开始的,最近在mercurial-dev邮件列表上进行了一些讨论。

    关于optimization - 我可以优化Mercurial克隆吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6616951/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com