-
Notifications
You must be signed in to change notification settings - Fork 2
3. 同步android源码
wzv5 edited this page Jul 26, 2017
·
1 revision
android 源码统一使用 repo 进行同步,这个工具是 Google 提供的,可以算是 git 的增强脚本,底层还是 git,所以知道点 git 基础使用还是很有帮助的(虽然不会也没什么大关系)。
如果你像我一样使用 Arch Linux,那么直接从包管理器里安装 repo 即可:
sudo pacman -S repo
如果包管理器里没有 repo,就需要手动安装:
sudo wget https://storage.googleapis.com/git-repo-downloads/repo -O /usr/bin/repo
sudo chmod +x /usr/bin/repo
为了方便使用,我这里直接把 repo 安装到 /usr/bin 目录下了。
mkdir -p ~/android/sudamod
cd ~/android/sudamod
repo 需要 Python2 来运行。
如果你使用的 Linux 发行版默认的 Python 版本是2,那么直接跳过这一步即可。
Arch 也可跳过,因为从包管理器里安装的 repo 会自动处理好这些问题。
pip install virtualenv
virtualenv -p python2 pyenv
source pyenv/bin/activate
repo init -u git://github.com/SudaMod/android.git -b sm-3.1
mkdir -p .repo/local_manifests
cd .repo/local_manifests
wget https://raw.githubusercontent.com/wzv5/android_device_zuk_z2_plus/sm-3.1/z2_sm_manifest.xml
cd ~/android/sudamod
repo sync -c -f -j8 --force-sync --no-clone-bundle
整个同步过程可能会持续3个小时或更长时间,有时1天也难以完成,请耐心等待。
如果网络有问题,比如科学上网不稳定,可能会出错,这时重新执行同步命令即可,会自动跳过已下载的内容。