1、Git的安装
sudo apt-get install git-core
2、安装Repo
/*
首先确保在当前用户的主目录下创建一个~/bin目录(如果没有的话),
然后把它(~/bin)加到PATH环境变量中;
*/
$ mkdir ~/bin
$ PATH=~/bin:$PATH
3 下载repo,给repo执行权限
$ curl https://dl-ssl.google.com/dl/googlesource/git-repo/repo > ~/bin/repo
$ chmod a+x ~/bin/repo
4 新建目录
$ mkdir WORKING_DIRECTORY
$ cd WORKING_DIRECTORY
5 初始化repo内容
初始化android-4.1.1_r4
$ repo init -u https://android.googlesource.com/platform/manifest
$ repo init -u https://android.googlesource.com/platform/manifest -b android-4.1.1_r4
最后会看到 repo initialized in /android这样的提示,就说明本地的版本库已经初始化完毕,并且包含了当前最新的sourcecode
$ repo sync
注意:在执行5初始化repo内容和6下载源码时,可能会出现如下错误
cp /home/fan/w/bsp13/.repo/repo/repo /home/fan/bin/repo
Traceback (most recent call last):
File "/home/fan/w/bsp13/.repo/repo/main.py", line 366, in <module>
_Main(sys.argv[1:])
File "/home/fan/w/bsp13/.repo/repo/main.py", line 346, in _Main
result = repo._Run(argv) or 0
File "/home/fan/w/bsp13/.repo/repo/main.py", line 137, in _Run
result = cmd.Execute(copts, cargs)
File "/home/fan/w/bsp13/.repo/repo/subcmds/sync.py", line 399, in Execute
if mp.HasChanges:
File "/home/fan/w/bsp13/.repo/repo/project.py", line 2115, in HasChanges
elif self._revlist(not_rev(HEAD), revid):
File "/home/fan/w/bsp13/.repo/repo/project.py", line 1772, in _revlist
return self.work_git.rev_list(*a, **kw)
File "/home/fan/w/bsp13/.repo/repo/project.py", line 1917, in rev_list
p.stderr))
error.GitError: manifests rev-list ('^HEAD', '534f50bb93b81920307876dcb6e0fef6bd568602', '--'): fatal: bad object 534f50bb93b81920307876dcb6e0fef6bd568602
原因 我还没有弄清楚。
解决办法:\WORKING_DIRECTORY\.repo 目录下的 除 repo 文件夹之外的其它所有文件,重新执行步骤5和步骤6
参考文献:
[1] http://source.android.com/source/downloading.html
[2] http://lengnuanyangguang.blog.163.com/blog/static/556764452012584558501/