AOSP repo sync需要太长时间

时间:2015-02-07 07:56:08

标签: android linux embedded android-source platform

我试图从同名书中学习嵌入式Android。作者建议与AOSP姜饼分公司合作。所以我按照下载来源:

$ repo init -u https://android.googlesource.com/platform/manifest.git
-b gingerbread

$ repo sync

但它花了太长时间。同样从输出,在我看来它也喜欢从其他分支下载源代码(我看到android-5 .....)这不是我想要的。我想知道这是否需要这么长时间。

有没有人有同样的问题?请给我一个建议!谢谢!

3 个答案:

答案 0 :(得分:27)

AOSP 是一个数千兆字节的下载,因此您无法做到这一点。但是,将-c / --current-branch选项传递给repo sync会导致Repo告诉Git只获取您真正需要的分支而不是每个存储库的所有分支。有了像Gingerbread这样的旧版本,理论上这应该是非常有益的。但是,Repo使用通过HTTP下载的Git包来存储存储库,并且包文件不受-c选项的影响。使用--no-clone-bundle禁用捆绑文件。因此,以下Repo命令应该产生最小的下载:

repo sync -c --no-clone-bundle

(请记住,Gingerbread是一个已有数年历史的版本。它在很多近期的硬件上都没有开箱即用。)

答案 1 :(得分:4)

repo sync -c --no-tags --no-clone-bundle -j2

大大缩短了我的同步时间。

答案 2 :(得分:2)

<强> repo init --depth 1

这是另一个可能提高同步速度的选项,因为它只应下载最新版本的回购。

另请参阅:https://superuser.com/questions/603547/how-can-i-limit-the-size-of-the-android-source-i-need-to-download-with-repo-syn

以下是我的完整测试命令:How to compile the Android AOSP kernel and test it with the Android Emulator?