1. repo简介
repo是Google开发的用于管理Android版本库的一个工具,repo是使用Python对git进行了一定的封装,并不是用于取代git,它简化了对多个Git版本库的管理。用repo管理的版本库都需要使用git命令来进行操作。
1.1 介绍清单库文件
清单文件是以xml的格式组织的,一个清单库可以包含多个清单文件和多个分支,每个清单文件和分支都有对应的版本。
-
remote元素
定义了名为korg的远程版本库,库的基址为git://172.16.1.31
-
project元素
用于定义一个项目,path属性表示在工作区clone的位置,name属性表示该项目的远程版本库的相对路径。
-
default元素
设置各个项目默认远程版本库为Korg,默认的分支为gingerbread-exdroid-stable。各个项目还可以定义自己的remote和revision覆盖默认的配置。
-
project元素下的子元素copyfile
定义了项目clone后的一个附件动作,从src拷贝文件到dest
1.2 下载repo代码
-
新建项目存放的文件夹
mkdir mstar648
-
进入到项目文件夹
cd mstar648
-
执行代码拉取的命令
repo init -u ssh://ppgerrit.com/Mstar648/manifest.git -b 648_cultraview -m ppos4.5.0_cultraview.xml
1.3 探究repo文件夹
-
通过如下命令查看mstar648目录下
ls -a
可以看到目录下有个.repo文件夹,说明mstar648项目是一个用repo管理的版本库。
- 进入到.repo,并查看目录内容
可以看到.repo目录下有manifest、project、repo文件夹等信息。
如果想查看Python封装的脚本,可到.repo/repo下看到:
如果想查看某个模块当前是在哪个分支,可以进入到manifests中去: