当前位置: 代码迷 >> Android >> Android4源代码下载回忆录1
  详细解决方案

Android4源代码下载回忆录1

热度:70   发布时间:2016-05-01 19:21:49.0
Android4源代码下载实录1!

官方下载介绍网站是这个:
http://source.android.com/source/downloading.html

1. 下载与android自己的git工具,其实是一个shell中调用自己的python脚本。
[email protected]:~$ curl https://dl-ssl.google.com/dl/googlesource/git-repo/repo > ~/bin/repo  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current                                 Dload  Upload   Total   Spent    Left  Speed100 19731  100 19731    0     0   1332      0  0:00:14  0:00:14 --:--:--  3923[email protected]:~$ 


2. 查看之后,计算sha1的值。跟官方提供的一样。哈哈。正确。
    然后创建工作目录。
[email protected]:~$ ls -l  bin/repo -rw-r--r-- 1 banxi1988 banxi 19731 2011-11-15 23:08 bin/repo[email protected]:~$ chmod a+x ~/bin/repo [email protected]:~$ sha1sum ~/bin/repo e1fd3bef059d152edf4d0522590725d317bc637f  /home/banxi1988/bin/repo[email protected]:~$ cd android[email protected]:~/android$ lsandroid-sdk-linux_x86          develop_android.txt                      myworksandroid-sdk_r11-linux_x86.tgz  docs                                     tempdebug_log                      eclipsedevelop_android_2.txt          eclipse-jee-helios-SR1-linux-gtk.tar.gz[email protected]:~/android$ mkdir android4_source[email protected]:~/android$ cd androidbash: cd: android: 没有那个文件或目录[email protected]:~/android$ cd android4_source/



初始化工作副本也就是仓库有点蛋痛了。
第一次失败:
[email protected]:~/android/android4_source$ repo init -u https://android.googlesource.com/platform/mainifestgpg: 钥匙环‘/home/banxi1988/.repoconfig/gnupg/secring.gpg’已建立gpg: 钥匙环‘/home/banxi1988/.repoconfig/gnupg/pubring.gpg’已建立gpg: /home/banxi1988/.repoconfig/gnupg/trustdb.gpg:建立了信任度数据库gpg: 密钥 920F5C65:公钥“Repo Maintainer <[email protected]>”已导入gpg: 合计被处理的数量:1gpg:               已导入:1Get https://android.googlesource.com/tools/reporemote: Counting objects: 1414, doneremote: Finding sources: 100% (78/78)remote: Total 1414 (delta 917), reused 1414 (delta 917)Receiving objects: 100% (1414/1414), 429.88 KiB | 4 KiB/s, done.Resolving deltas: 100% (917/917), done.From https://android.googlesource.com/tools/repo * [new branch]      maint      -> origin/maint * [new branch]      master     -> origin/master * [new branch]      stable     -> origin/stable * [new tag]         v1.0       -> v1.0 * [new tag]         v1.0.1     -> v1.0.1 * [new tag]         v1.0.2     -> v1.0.2 * [new tag]         v1.0.3     -> v1.0.3 * [new tag]         v1.0.4     -> v1.0.4 * [new tag]         v1.0.5     -> v1.0.5 * [new tag]         v1.0.6     -> v1.0.6 * [new tag]         v1.0.7     -> v1.0.7 * [new tag]         v1.0.8     -> v1.0.8 * [new tag]         v1.0.9     -> v1.0.9 * [new tag]         v1.1       -> v1.1 * [new tag]         v1.2       -> v1.2 * [new tag]         v1.3       -> v1.3 * [new tag]         v1.3.1     -> v1.3.1 * [new tag]         v1.3.2     -> v1.3.2 * [new tag]         v1.4       -> v1.4 * [new tag]         v1.4.1     -> v1.4.1 * [new tag]         v1.4.2     -> v1.4.2 * [new tag]         v1.4.3     -> v1.4.3 * [new tag]         v1.4.4     -> v1.4.4 * [new tag]         v1.5       -> v1.5 * [new tag]         v1.5.1     -> v1.5.1 * [new tag]         v1.6       -> v1.6 * [new tag]         v1.6.1     -> v1.6.1 * [new tag]         v1.6.10    -> v1.6.10 * [new tag]         v1.6.10.1  -> v1.6.10.1 * [new tag]         v1.6.10.2  -> v1.6.10.2 * [new tag]         v1.6.2     -> v1.6.2 * [new tag]         v1.6.3     -> v1.6.3 * [new tag]         v1.6.4     -> v1.6.4 * [new tag]         v1.6.5     -> v1.6.5 * [new tag]         v1.6.6     -> v1.6.6 * [new tag]         v1.6.7     -> v1.6.7 * [new tag]         v1.6.7.1   -> v1.6.7.1 * [new tag]         v1.6.7.2   -> v1.6.7.2 * [new tag]         v1.6.7.3   -> v1.6.7.3 * [new tag]         v1.6.7.4   -> v1.6.7.4 * [new tag]         v1.6.7.5   -> v1.6.7.5 * [new tag]         v1.6.8     -> v1.6.8 * [new tag]         v1.6.8.1   -> v1.6.8.1 * [new tag]         v1.6.8.10  -> v1.6.8.10 * [new tag]         v1.6.8.11  -> v1.6.8.11 * [new tag]         v1.6.8.2   -> v1.6.8.2 * [new tag]         v1.6.8.3   -> v1.6.8.3 * [new tag]         v1.6.8.4   -> v1.6.8.4 * [new tag]         v1.6.8.5   -> v1.6.8.5 * [new tag]         v1.6.8.6   -> v1.6.8.6 * [new tag]         v1.6.8.7   -> v1.6.8.7 * [new tag]         v1.6.8.8   -> v1.6.8.8 * [new tag]         v1.6.8.9   -> v1.6.8.9 * [new tag]         v1.6.9     -> v1.6.9 * [new tag]         v1.6.9.1   -> v1.6.9.1 * [new tag]         v1.6.9.2   -> v1.6.9.2 * [new tag]         v1.6.9.3   -> v1.6.9.3 * [new tag]         v1.6.9.4   -> v1.6.9.4 * [new tag]         v1.6.9.5   -> v1.6.9.5 * [new tag]         v1.6.9.6   -> v1.6.9.6 * [new tag]         v1.6.9.7   -> v1.6.9.7 * [new tag]         v1.6.9.8   -> v1.6.9.8 * [new tag]         v1.7       -> v1.7 * [new tag]         v1.7.1     -> v1.7.1 * [new tag]         v1.7.2     -> v1.7.2 * [new tag]         v1.7.3     -> v1.7.3 * [new tag]         v1.7.3.1   -> v1.7.3.1 * [new tag]         v1.7.4     -> v1.7.4 * [new tag]         v1.7.4.1   -> v1.7.4.1 * [new tag]         v1.7.4.2   -> v1.7.4.2 * [new tag]         v1.7.4.3   -> v1.7.4.3 * [new tag]         v1.7.5     -> v1.7.5 * [new tag]         v1.7.6     -> v1.7.6 * [new tag]         v1.7.6.1   -> v1.7.6.1 * [new tag]         v1.7.7     -> v1.7.7 * [new tag]         v1.7.7.1   -> v1.7.7.1 * [new tag]         v1.7.7.2   -> v1.7.7.2 * [new tag]         v1.7.7.3   -> v1.7.7.3 * [new tag]         v1.7.7.4   -> v1.7.7.4 * [new tag]         v1.7.7.5   -> v1.7.7.5 * [new tag]         v1.7.7.6   -> v1.7.7.6Get https://android.googlesource.com/platform/mainifesterror: android.googlesource.com: <urlopen error [Errno 8] _ssl.c:499: EOF occurred in violation of protocol> [email protected]:~/android/android4_source$ 


再来,发现不行。
[email protected]:~/android/android4_source$ repo init -u https://android.googlesource.com/platform/mainifestTraceback (most recent call last):  File "/home/banxi1988/android/android4_source/.repo/repo/main.py", line 355, in <module>    _Main(sys.argv[1:])  File "/home/banxi1988/android/android4_source/.repo/repo/main.py", line 337, in _Main    repo._Run(argv)  File "/home/banxi1988/android/android4_source/.repo/repo/main.py", line 135, in _Run    cmd.Execute(copts, cargs)  File "/home/banxi1988/android/android4_source/.repo/repo/subcmds/init.py", line 260, in Execute    self._SyncManifest(opt)  File "/home/banxi1988/android/android4_source/.repo/repo/subcmds/init.py", line 124, in _SyncManifest    m.PreSync()  File "/home/banxi1988/android/android4_source/.repo/repo/project.py", line 2064, in PreSync    cb = self.CurrentBranch  File "/home/banxi1988/android/android4_source/.repo/repo/project.py", line 552, in CurrentBranch    b = self.work_git.GetHead()  File "/home/banxi1988/android/android4_source/.repo/repo/project.py", line 1834, in GetHead    fd = open(path, 'rb')IOError: [Errno 2] No such file or directory: '/home/banxi1988/android/android4_source/.repo/manifests/.git/HEAD'[email protected]:~/android/android4_source$ 



删除因为前面初始化创建的目录后,继续来。
还是不行。然后直接在网站上打开,发现了下面的东西 。
其实没有什么。
git clone https://android.googlesource.com/platform/manifest.git


在下面再来一次,哈哈,看起来得了。
From /home/banxi1988/android/android4_source/.repo/manifests.git/clone.bundle * [new branch]      master     -> origin/master * [new branch]      gingerbread -> origin/gingerbreadremote: Counting objects: 180, doneremote: Finding sources: 100% (176/176)remote: Getting sizes: 101% (79/78)remote: Compressing objects: 100% (74/74)remote: Total 176 (delta 25), reused 154 (delta 21)Receiving objects: 100% (176/176), 62.90 KiB, done.Resolving deltas: 100% (43/43), completed with 1 local objects.From https://android.googlesource.com/platform/manifest * [new branch]      android-1.6_r1 -> origin/android-1.6_r1 * [new branch]      android-1.6_r1.1 -> origin/android-1.6_r1.1 * [new branch]      android-1.6_r1.2 -> origin/android-1.6_r1.2 * [new branch]      android-1.6_r1.3 -> origin/android-1.6_r1.3 * [new branch]      android-1.6_r1.4 -> origin/android-1.6_r1.4 * [new branch]      android-1.6_r1.5 -> origin/android-1.6_r1.5 * [new branch]      android-1.6_r2 -> origin/android-1.6_r2 * [new branch]      android-2.0.1_r1 -> origin/android-2.0.1_r1 * [new branch]      android-2.0_r1 -> origin/android-2.0_r1 * [new branch]      android-2.1_r1 -> origin/android-2.1_r1 * [new branch]      android-2.1_r2 -> origin/android-2.1_r2 * [new branch]      android-2.1_r2.1p -> origin/android-2.1_r2.1p * [new branch]      android-2.1_r2.1p2 -> origin/android-2.1_r2.1p2 * [new branch]      android-2.1_r2.1s -> origin/android-2.1_r2.1s * [new branch]      android-2.2.1_r1 -> origin/android-2.2.1_r1 * [new branch]      android-2.2.1_r2 -> origin/android-2.2.1_r2 * [new branch]      android-2.2.2_r1 -> origin/android-2.2.2_r1 * [new branch]      android-2.2_r1 -> origin/android-2.2_r1 * [new branch]      android-2.2_r1.1 -> origin/android-2.2_r1.1 * [new branch]      android-2.2_r1.2 -> origin/android-2.2_r1.2 * [new branch]      android-2.2_r1.3 -> origin/android-2.2_r1.3 * [new branch]      android-2.3.1_r1 -> origin/android-2.3.1_r1 * [new branch]      android-2.3.2_r1 -> origin/android-2.3.2_r1 * [new branch]      android-2.3.3_r1 -> origin/android-2.3.3_r1 * [new branch]      android-2.3.3_r1.1 -> origin/android-2.3.3_r1.1 * [new branch]      android-2.3.4_r0.9 -> origin/android-2.3.4_r0.9 * [new branch]      android-2.3.4_r1 -> origin/android-2.3.4_r1 * [new branch]      android-2.3.5_r1 -> origin/android-2.3.5_r1 * [new branch]      android-2.3.6_r0.9 -> origin/android-2.3.6_r0.9 * [new branch]      android-2.3.6_r1 -> origin/android-2.3.6_r1 * [new branch]      android-2.3.7_r1 -> origin/android-2.3.7_r1 * [new branch]      android-2.3_r1 -> origin/android-2.3_r1 * [new branch]      android-4.0.1_r1 -> origin/android-4.0.1_r1 * [new branch]      froyo      -> origin/froyo   82d0651..1b6c432  gingerbread -> origin/gingerbread * [new branch]      gingerbread-release -> origin/gingerbread-release * [new branch]      ics-mr0    -> origin/ics-mr0   6cf16a5..5f8c416  master     -> origin/master * [new tag]         android-1.6_r1.1_ -> android-1.6_r1.1_ * [new tag]         android-1.6_r1.2_ -> android-1.6_r1.2_ * [new tag]         android-1.6_r1.3_ -> android-1.6_r1.3_ * [new tag]         android-1.6_r1.4_ -> android-1.6_r1.4_ * [new tag]         android-1.6_r1.5_ -> android-1.6_r1.5_ * [new tag]         android-1.6_r1_ -> android-1.6_r1_ * [new tag]         android-1.6_r2_ -> android-1.6_r2_ * [new tag]         android-2.0.1_r1_ -> android-2.0.1_r1_ * [new tag]         android-2.0_r1_ -> android-2.0_r1_ * [new tag]         android-2.1_r1_ -> android-2.1_r1_ * [new tag]         android-2.1_r2.1p2_ -> android-2.1_r2.1p2_ * [new tag]         android-2.1_r2.1p_ -> android-2.1_r2.1p_ * [new tag]         android-2.1_r2.1s_ -> android-2.1_r2.1s_ * [new tag]         android-2.1_r2_ -> android-2.1_r2_ * [new tag]         android-2.2.1_r1_ -> android-2.2.1_r1_ * [new tag]         android-2.2.1_r2_ -> android-2.2.1_r2_ * [new tag]         android-2.2.2_r1_ -> android-2.2.2_r1_ * [new tag]         android-2.2_r1.1_ -> android-2.2_r1.1_ * [new tag]         android-2.2_r1.2_ -> android-2.2_r1.2_ * [new tag]         android-2.2_r1.3_ -> android-2.2_r1.3_ * [new tag]         android-2.2_r1_ -> android-2.2_r1_ * [new tag]         android-2.3.1_r1_ -> android-2.3.1_r1_ * [new tag]         android-2.3.2_r1_ -> android-2.3.2_r1_ * [new tag]         android-2.3.3_r1.1_ -> android-2.3.3_r1.1_ * [new tag]         android-2.3.3_r1_ -> android-2.3.3_r1_ * [new tag]         android-2.3.4_r0.9_ -> android-2.3.4_r0.9_ * [new tag]         android-2.3.4_r1_ -> android-2.3.4_r1_ * [new tag]         android-2.3.5_r1_ -> android-2.3.5_r1_ * [new tag]         android-2.3.6_r0.9 -> android-2.3.6_r0.9 * [new tag]         android-2.3.6_r1 -> android-2.3.6_r1 * [new tag]         android-2.3.7_r1 -> android-2.3.7_r1 * [new tag]         android-2.3_r1_ -> android-2.3_r1_ * [new tag]         android-4.0.1_r1 -> android-4.0.1_r1Your Name  [Li HaiZhen]: Li HaiZhen Your Email [[email protected]]: [email protected]Your identity is: Li HaiZhen <[email protected]>is this correct [y/n]? yTesting colorized output (for 'repo diff', 'repo status'):  black    red      green    yellow   blue     magenta   cyan     white   bold     dim      ul       reverse Enable color display in this user account (y/n)? yrepo initialized in /home/banxi1988/android/android4_source



然后进行下一步。
[email protected]:~/android/android4_source$ repo init -u https://android.googlesource.com/platform/manifest -b android-4.0.1_r1.repo/manifests/: manifest switched refs/heads/master...android-4.0.1_r1project .repo/manifests/Updating 5f8c416..c4e4db1Fast-forward base-for-3.0-gpl.xml |  183 ---------------------------------------------- base-for-3.1-gpl.xml |  188 ------------------------------------------------ base-for-3.2-gpl.xml |  195 -------------------------------------------------- default.xml          |    9 +-- 4 files changed, 1 insertions(+), 574 deletions(-) delete mode 100644 base-for-3.0-gpl.xml delete mode 100644 base-for-3.1-gpl.xml delete mode 100644 base-for-3.2-gpl.xmlYour Name  [Li HaiZhen]: Li HaiZhenYour Email [[email protected]]: [email protected]Your identity is: Li HaiZhen <[email protected]>is this correct [y/n]? yrepo initialized in /home/banxi1988/android/android4_source[email protected]:~/android/android4_source$ lshelp[email protected]:~/android/android4_source$ cd help/[email protected]:~/android/android4_source/help$ ls[email protected]:~/android/android4_source/help$ 



然后将本地仓库与服务器的同步。即真正的下载了。
又有错误。

remote: Counting objects: 38, doneremote: Finding sources: 100% (21/21)remote: Getting sizes: 103% (33/32)remote: Compressing objects: 100% (15/15)remote: Total 21 (delta 2), reused 13 (delta 2)Unpacking objects: 100% (21/21), done.From https://android.googlesource.com/platform/development * [new branch]      ics-factoryrom-2-release -> aosp/ics-factoryrom-2-release * [new branch]      ics-mr0    -> aosp/ics-mr0   8e3c195..6b415b7  master     -> aosp/master * [new tag]         android-4.0.1_r1 -> android-4.0.1_r1Fetching projects:   5% (12/221)  error: Exited sync due to fetch errors[email protected]:~/android/android4_source$ 

不管了,继续重复运行repo rsync命令。。。

下载好慢啊,未完待续。
  相关解决方案