近期在下载android4.0的代码,下列操作 下载Repo
$ mkdir ~/bin $ PATH=~/bin:$PATH
$ curl https://dl-ssl.google.com/dl/googlesource/git-repo/repo > ~/bin/repo $ chmod a+x ~/bin/repo
创建源代码文件夹:
$ mkdir ANDROID_SOURCE
$ cd ANDROID_SOURCE
获取git上的android源代码版本号
$ repo init -u https://android.googlesource.com/platform/manifest
我们下载最新版
$ repo init -u https://android.googlesource.com/platform/manifest -b android-4.0.3_r1
$ repo sync
可加參数: -jx x代表开启多少个线程来下载源代码
依照 google 的官网设置会出如今下载的时候产生错误 从而不能下载,之前Android的代码是在Linux kernel(android.git.kernel.org)管理,被Kernel踢出来之后,Android源代码如今直接由Google(android.googlesource.com)管理。
用repo/git下载源代码时
发现有错误:
DownloadError: android.googlesource.com: <urlopen error [Errno 110] Connection timed out>
在源代码站点 http://source.android.com/source/downloading.html能够了解信息:
By default, access to the Android source code is anonymous. To protect theservers against excessive usage, each IP address is associated with a quota.
When sharing an IP address with other users (e.g. when accessing the sourcerepositories from beyond a NAT firewall), the quotas can trigger even forregular usage patterns (e.g. if many users sync new clients from the same IPaddress within a short period).
In that case, it is possible to use authenticated access, which then usesa separate quota for each user, regardless of the IP address.
The first step is to create a password fromthe password generator andto save it in~/.netrc
according to the instructions on that page.
The second step is to force authenticated access, by using the followingmanifest URI:https://android.googlesource.com/a/platform/manifest
. Noticehow the/a/
directory prefix triggers mandatory authentication. You canconvert an existing client to use mandatory authentication with the followingcommand:
$ repo init -u https://android.googlesource.com/a/platform/manifest
登录https://android.googlesource.com/new-password 用自己注冊邮箱登录,点击网页上的“同意訪问”,得到类似
machine android.googlesource.com login git-<userName>.gmail.com password <password> machine android-review.googlesource.com login git-<userName>.gmail.com password <password> 把上面那段信息追加到~/.netrc文件结尾(请检查当前用户的权限, 假设不存在此文件则自己新建一个) 下载地址的URI更改为https://android.googlesource.com/a/platform/manifest(中间加上了“/a”)。 repo init -u https://android.googlesource.com/a/platform/manifest -b android-4.0.3_r1 repo sync -j10