使用GitBash同步android AOSP源码以及使用国内镜像来做本地AOSP镜像
通过国内Android AOSP镜像来做本地镜像:
参考(国内清华和中科大两个镜像站点的地址):
先安装git。
配置缓存大小为1GB-1:
# git config –global https.postBuffer 1073741823
# git config –global http.postBuffer 1073741823
# git config –global git.postBuffer 1073741823
配置git用户信息:
# git config –global user.name “Max Shu”
# git config –global user.email “maxshu_cn@163.com”
安装repo:
# curl https://storage.googleapis.com/git-repo-downloads/repo > ~/repo
# sudo mv ~/repo /bin/repo
# sudo chmod a+x /bin/repo
镜像并同步:
# mkdir /AOSP_mirror
# cd /AOSP_mirror
# repo init -u git://mirrors.ustc.edu.cn/aosp/platform/manifest –mirror –repo-url=https://mirrors.tuna.tsinghua.edu.cn/git/git-repo
或者:# repo init -u https://mirrors.tuna.tsinghua.edu.cn/git/aosp/mirror/manifest –mirror
# repo sync
执行多次,一直到同步完成(以后需要定期同步)。
查看一下从哪里镜像过来的:
# vi .repo/manifests.git/config
[remote “origin”]
url = git://mirrors.ustc.edu.cn/aosp/platform/manifest
fetch = +refs/heads/*:refs/remotes/origin/*
做本地git://镜像:
# yum install git-daemon
# git daemon –verbose –export-all –base-path=/AOSP_mirror
测试下:
(到别的目录或机器执行克隆)$ git clone git://172.18.1.23/device/google/bonito-kernel
启动到后台(默认端口为9418):
# git daemon –verbose –export-all –base-path=/AOSP_mirror –detach
到其他机器上测试:
$ repo init -u git://172.18.1.23/platform/manifest –repo-url=https://mirrors.tuna.tsinghua.edu.cn/git/git-repo
$ repo sync
替换已有代码里面的https://镜像为git方式:
$ vi .repo/manifests.git/config
[remote “origin”]
# url = http://aosp.tuna.tsinghua.edu.cn/platform/manifest
fetch = +refs/heads/*:refs/remotes/origin/*
或者:
$ git config –global url.git://172.18.1.23/.insteadof https://android.googlesource.com
$ git config –global url.git://172.18.1.23/.insteadof http://android.googlesource.com
少量的则可以修改android AOSP的url为国内镜像的来下载也可以:
$ git config –global url.https://mirrors.tuna.tsinghua.edu.cn/git/AOSP/.insteadof https://android.googlesource.com
使用GitBash同步Adnroid的AOSP源码:
必须使用系统管理员方式打开GitBash。
设置代理,以便能访问adnroid aosp网站:
$ export http_proxy=”127.0.0.1:1080″
$ export https_proxy=”127.0.0.1:1080″
安装repo:
$ mkdir aosp
$ cd aosp
$ chmod a+x ./repo
配置缓存大小:
$ git config –global https.postBuffer 2147483648
$ git config –global http.postBuffer 2147483648
初始化是否能行:
$ ./repo init -u https://android.googlesource.com/platform/manifest
如果pgp校验出错(gpg: keyblock resource ‘/e/Work/AOSP_mirror/.repo/repo/C:\Users\maxsh/.repoconfig\gnupg/pubring.kbx’: No such file or directory):
$ cd .repo/
$ git clone https://gerrit.googlesource.com/git-repo
$ rm -rf repo/
$ mv git-repo repo
$ cd ..
重新初始化:
$ ./repo init -u https://android.googlesource.com/platform/manifest
同步:
$ ./repo sync
可能执行多次,一直到同步完成。
这个好