Repo 简介
Android 为企业提供一个新的市场,无论大企业,小企业都是处于同一个起跑线上。研究 Android 尤其是 Android 系统核心或者是驱动的开发,首先需要做的就是本地克隆建立一套 Android 版本库管理机制。
Android 使用 Git 作为代码管理工具,开发了 Gerrit 进行代码审核以便更好的对代码进行集中式管理,还开发了 Repo 命令行工具,对 Git 部分命令封装,将百多个 Git 库有效的进行组织。
Repo 是基于 Git 工具的库管理系统工具,该工具可以统一管理 Git 知识库并提交源码到版本管理系统,使得 Android 项目的开发流程自动化。Repo 并不意味着替代 Git 工具,它仅使得工作更加简单。Repo 命令是 Python 脚本,可以放到任何路径下。涉及到网络操作时可以使用该工具,比如使用单个 Repo 命令可以下载多个库到本地。
Git 与 Repo 的适用区别
对于 Android SDK 如此庞大的工程来说,直接适用 Git 来进行版本管理是不切实际的。因此,Google 将整套 SDK 拆分成上百个模块分别用 Git 来进行维护。为了使下载和同步所有 Git 库更加方便,Google 又开发出了 Repo 来对所有的 Git 仓库进行管理。
常用命令
命令 | 说明 |
---|---|
repo init | 在当前目录初始化 repo |
repo sync | 将远程代码库同步到本地 |
repo start | 新建一个 repo 分支 |
repo status | 显示当前分支的状态 |
repo upload | 将更改上传到审核服务器 |
repo abandon | 删除分支 |
repo branch/branches | 查看当前分支 |
repo checkout | 切换分支 |
repo cherr-pick | 引用某个修改到当前分支上 |
repo diff | 显示提交和工作树之间的修改 |
repo list | 列出(各个)项目列表及其相关(远程)目录 |