我正在寻找一种使用 Android 源代码的方法,同时试图保持较低的磁盘空间使用率。是否有可能init
一些项目很浅(我只需要最新的源代码并且不会修改)和其他项目作为常规 git repos 能够获取、推送等?
编辑:repo
有一个--depth=DEPTH
参数,我想知道每个子项目的参数是否不同。
我正在寻找一种使用 Android 源代码的方法,同时试图保持较低的磁盘空间使用率。是否有可能init
一些项目很浅(我只需要最新的源代码并且不会修改)和其他项目作为常规 git repos 能够获取、推送等?
编辑:repo
有一个--depth=DEPTH
参数,我想知道每个子项目的参数是否不同。
克隆和维护完整的 Android 树的唯一实际可行的方法是使用repo
带有repo init
和的实用程序repo sync
。据我所知,repo
不支持浅存储库。但是在不使用的情况下检查 200-400 个 git 存储库repo
是非常困难的。
另外,请记住,存储在.git
目录中的 git 元数据通常比仅签出 top commit 占用更少的空间(但是 repo 使用符号链接玩了一些技巧,因此实际数据存储在.repo
. 因此,在绝对最好的情况下,您将节省不超过 50% 的磁盘空间,但实际上差别会小得多。
最后,在当今的典型 HDD 大小为 1TB 或更大的情况下,保持磁盘使用率低的唯一可能原因是在使用 SSD 时。完整的 Android 树应该可以轻松放入大约 30GB(即使有 build out/ 目录),这使得相当小的 128 GB SSD 成为 Android 开发非常实用的解决方案。