Mercurial Bundles

如果您网络连接不佳,导致 hg clone 无法完成,您可能需要尝试下载您感兴趣的代码库的 bundle 文件。这很有用,因为与 hg clone 不同,文件下载可以在连接中断时恢复。一旦您拥有了 bundle 文件,如果您定期更新,保持最新状态应该不会花费太多时间。

本文档说明了如何使用 bundle 文件设置 mozilla-unified 代码库的步骤。请务必将“mozilla-unified”替换为您正在使用的项目的名称。

下载 bundle

  1. 打开 https://hg.cdn.mozilla.net/

它列出了 https://hg.mozilla.net/ 中列出的一些代码库的最新 bundle 文件。每一行对应一个代码库,每一列对应一种压缩格式。

  1. 下载 mozilla-unified 代码库的 bundle 文件

单击“mozilla-unified”行,“zstd (max)”列中的链接。

设置代码库

下载代码库 bundle 后,请按照以下步骤根据该 bundle 在本地重新创建代码库。

  1. 初始化一个新的代码库(此处在名为 mozilla-unified 的目录中)

mkdir mozilla-unified
hg init mozilla-unified
  1. 将 bundle 文件解包到该代码库中

将 bundle 文件移动到 mozilla-unified 目录旁边,并将其重命名为 bundle.hg

cd mozilla-unified
hg unbundle ../bundle.hg

放松一下,喝杯咖啡(或您喜欢的饮料)。也许还可以小睡一下。这个解包过程需要相当长的时间。

  1. 创建代码库的配置文件 .hg/hgrc,并添加以下行,以便 Mercurial 自动知道从哪里拉取未来更新的更改。您可以通过运行 hg config --local --editEDITOR=<editor-of-your-choice> hg config --local --edit 在编辑器中打开模板配置文件

[paths]
default = https://hg.mozilla.org/mozilla-unified/
  1. 更新代码库以获取 bundle 创建以来的所有更改(此步骤也作为 bundle完整性检查,因为如果其内容与官方代码库中的内容不完全相同,则 hg pull 将失败)

hg pull
  1. 从您新的最新代码库中检出一个工作副本

hg update

您现在拥有了一个与通过 hg clone 创建的克隆完全相同的 mozilla-unified 克隆。您可以调整您的构建设置,或者您可以直接开始构建 Firefox!

如果您在任何时候遇到问题,请随时在 Riot/Matrix 的 https://chat.mozilla.org 中的 #introduction 频道提问。