入不了source.android.com,故是网友介绍的一种方式下载的。
下载完毕后,源码目前有3.83G大小。
首先,你先到 http://code.google.com/p/msysgit/downloads/list 上下载Git-xxx.exe,我下?的是 Git-1.6.2.2-preview20090408.exe。
下?下?後,直接按?定到底,可以完成安?。?完後,?行他的 Git Bash 程式。你?看到像是下面??的命令列?窗。其?,?是?和 Linux 上相同的 bash,不少 Linux 命令都有,? Perl 也找的到。不?,重要的是,他整合? git ??命令。
接著,用 cd 命令,?入到你要下? Android 原始?的目?後,再?行 git clone 命令,可以下?你指定的 package。
??例子??,我想要下? Browsers ???用程式的原始?。底下是我在 Git Bash 中下的命令。
cd /d/AndroidProgram/AndroidSource/1.0r1/Android_open_source/platform/packages/apps
git clone git://android.git.kernel.org/platform/packages/apps/Browser.git
?步的??在,你要知道你所要下?原始?的 repository。告?你,所有的 Android repositories 都在http://git.source.android.com。?入???站後,你?看到下面??的?面。
Project ?一?列的是 Android 中每? sub-project 的路?。前面再加上 git://android.git.kernel.org/ 是他的 repository 路?。
再??例子??,如果你像要下? SQLite 的原始?,那下:
git clone git://android.git.kernel.org/platform/external/sqlite.git
如果你只是想看某??案的?容,你也可以?右?的 tree ??,??一路?下去,看到?案列表?,再?右?的 raw ??。看到?,原始??示在你的??器上。
如果你想下载全部源代码怎么办,目前没有看到好的办法,我的做法是将上面的git列表中的内容拷贝下来,然后写成一个shell命令执行。
我的做法:
1:拷贝git列表时,请点击http://android.git.kernel.org/右下角的"TXT"按钮,此时将出现TXT文档的git列表,将每列后面的"Android+Open+Source+Project"替换为空,然后在每列前面加上git clone git://android.git.kernel.org/即可,建议选择一个可以进行列操作的编辑器,比如说ultredit.我1min不到将列表搞定了。
注意需要进入到相应的目录下才能下载。我下载完毕后发现全部放到根目录下了,故后用下面的python脚本进行了移动
import fileinput
import sys
import re
import os
import string
outfp = open("D:/cj/project/android/tools/move.sh","w")
for line in fileinput.input("D:/cj/project/android/tools/git-list"):
path = os.path.dirname(line)
file = os.path.basename(line)
file = file.replace("", "")
file = file.replace(" ", "")
xx = ""
for dirx in path.split("/"):
xx = xx + dirx + "/"
outfp.write("mkdir " + xx + " ")
outfp.write("mv " + file + " " + path + " ")
outfp.close()
2:将该列表保存在源代码目录下,文件名为update.sh
3:在git窗口下执行: update.sh
然后你慢慢等待吧。
git列表文件为:
git clone git://android.git.kernel.org/tools/gwtexpui.git
git clone git://android.git.kernel.org/tools/gerrit-contactstore.git
git clone git://android.git.kernel.org/tools/gerrit-keyapplet.git
git clone git://android.git.kernel.org/tools/executablewar.git
git clone git://android.git.kernel.org/tools/test/project0.git
git clone git://android.git.kernel.org/tools/test/manifest.git
git clone git://android.git.kernel.org/tools/repo.git
git clone git://android.git.kernel.org/tools/protobuf.git
git clone git://android.git.kernel.org/tools/manifest.git
git clone git://android.git.kernel.org/tools/gwtorm.git
git clone git://android.git.kernel.org/tools/gwtjsonrpc.git
git clone git://android.git.kernel.org/tools/gerrit.git
git clone git://android.git.kernel.org/tools/android-issuetrackerredirect.git
git clone git://android.git.kernel.org/platform/vendor/qcom/surf.git
git clone git://android.git.kernel.org/platform/vendor/htc/dream.git
git clone git://android.git.kernel.org/platform/vendor/asus/eee_701.git
git clone git://android.git.kernel.org/platform/system/wlan/broadcom.git
git clone git://android.git.kernel.org/platform/system/wlan/ti.git
git clone git://android.git.kernel.org/platform/system/extras.git
git clone git://android.git.kernel.org/platform/system/core.git
git clone git://android.git.kernel.org/platform/system/bluetooth.git
git clone git://android.git.kernel.org/platform/recovery.git