如何只下载 AOSP 源代码的工作目录而不下载整个 repo 历史记录?

How to download only a working directory of the AOSP source code without the entire repo history?

最新的 AOSP 源代码相当大(.repo 目录大约 30-35 Gb,工作目录大约 15 Gb)。有没有办法只下载最新版本源代码(官方棉花糖发布)的快照,而不下载整个回购历史?那会为我节省很多带宽和存储空间。

您可以指定--depth 1git clone命令。它只会获取最新的快照。

在Ubuntu

中下载android源代码(AOSP)的步骤
  1. 首先创建一个文件夹,如“aosp-m”,用于将AOSP代码复制到您的机器中。

  2. 打开终端(Ctrl+Alt+T)并将您的目录更改为最新创建的目录让我们说“aosp-m

  3. 之后 运行 在终端中执行以下命令:- git 克隆 git://gitz01/cm/download/android/manifest 如果这个 link 不起作用那么试试这个 repo init -u https://android.googlesource.com/platform/manifest

  4. 运行 终端中的命令一一执行 git 配置 --global user.name "Your Name" git 配置 --global user.email "you@example.com"

  5. 然后 运行 按照 repo init 命令 repo init -u git://gitz01/cm/download/android/manifest -b master -m identifiedmanifest.xml 如果这个 link 不起作用那么试试这个 repo init --depth=1 -u https://android.googlesource.com/platform/manifest -b identifiedmanifest.xml 在这里您可以将 identifiedmanifest.xml 替换为您想要的 AOSP 源代码,假设 "android-6.0.1_r10.xml" 棉花糖.

  6. 和最后一个 运行“repo sync”命令。此命令开始在您的计算机中下载所需的 AOSP 代码。此操作需要 1 个多小时(取决于您的互联网连接速度)来下载源代码。 就是这样......快乐编码......

git 版本 2.19(2018 年发布)以来,我们可以通过 repo 工具使用 git--partial-clone 标志,如下所示:

repo init -u https://android.googlesource.com/platform/manifest -b master --partial-clone --clone-filter=blob:limit=10M

对于 2020 年此问答的读者,请注意 AOSP 存储库已经变得更大,上述命令仍然会产生大约 73 GB 的源代码和相关文件。