repo只是google用Python脚本写的调用git的一个脚本,主要是用来下载、管理Android项目的软件仓库。

1. 下载 repo 的地址: http://android.git.kernel.org/repo ,可以用 wget http://android.git.kernel.org/repo 或者 curl http://android.git.kernel.org/repo >~/bin/repo 来下载 repo , chmod a+x ~/bin/repo


2. 用repo sync 抓取 android source code 的时候,会经常出现一些错误导致 repo sync 中断,每次都要手动开始。

可以在一个脚本里写如下的命令,来自动取重复:

repo sync
while [ $? -ne 0 ] 
do 
    repo sync
done

repo sync [project] 下载最新本地工作文件,同步 repository 中的代码。 可以指定需要更新的project , 如果不指定任何参数,会同步整个所有的项目

如果是第一次运行 repo sync , 则这个命令相当于 git clone 会把 repository 中的所有内容都拷贝到本地

如果不是第一次运行 repo sync , 则相当于 更新 和 自动合并 动作;

repo sync 会更新 .repo 下面的文件。 如果在merge 的过程中出现冲突, 这需要手动运行 git rebase --continue

3. repo help [ command ] , 显示command 的详细的帮助信息内容

如:可以用命令: repo help init 来获取 repo init 的其他用法

4. repo init -u URL , 在当前目录安装 repository ,会在当前目录创建一个目录 ".repo" , -u 参数指定一个URL, 从这个URL 中取得repository 的 manifest 文件。

repo init -u git://android.git.kernel.org/platform/manifest.git ,可以用 -m 参数来选择 repository 中的某一个特定的 manifest 文件,如果不具体指定,那么表示为默认的 manifest 文件 (default.xml)

repo init -u git://android.git.kernel.org/platform/manifest.git -m dalvik-plus.xml , 可以用 -b 参数来指定某个manifest 分支。

repo init -u git://android.git.kernel.org/platform/manifest.git -b release-1.0

5. repo upload[ project-list ] 上传修改的代码 ,如果你本地的代码有所修改,那么在运行 repo sync 的时候,会提示你上传修改的代码,所有修改的代码分支会上传到 Gerrit (基于web 的代码review 系统), Gerrit 受到上传的代码,会转换为一个个变更,从而可以让人们来review 修改的代码。

6. repo diff [ project-list ] 显示提交的代码和当前工作目录代码之间的差异。

7. repo forall -c command,对所有项目执行一个command命令,这个命令 相当 好用;

8. repo start newbranchname 创建新的branch分支。 "." 代表当前工作的branch 分支。

9. repo prune [project list] 删除已经merge 的 project

10. repo status 显示 project 的状态

最新文章

  1. 《HTML重构》读书笔记&思维导图
  2. DayPilot 7.9.3373 去掉DEMO
  3. linux下发布的执行文件崩溃的问题定位 心得一则
  4. jQueryEasyUI
  5. Beta版本贡献比
  6. js控制只能输入数字
  7. php foreach 操作数组的代码
  8. linux系统 备份与还原
  9. Unity手游之路<六>游戏摇杆之Easy Touch 3教程
  10. When to use HTML Helper?
  11. 微信小程序----关于变量对象data 和 前端wxml取后台js变量值
  12. ubuntu桌面不显示菜单
  13. [转载]或许您还不知道的八款Android开源游戏引擎
  14. vue mint-ui 三级地址联动
  15. Windows kafka_2.11-1.1.0安装
  16. C# abstract virtual override new finally java final finalize
  17. synchronized 关键字如何使用
  18. [转]使用CMS垃圾收集器产生的问题和解决方案
  19. ios 拉伸图片和计算文字的大小
  20. Docker容器 暴露多个端口

热门文章

  1. python学习【第十一篇】网络编程
  2. 封装AJax实现JSON前台与后台交互
  3. VCL控件组件大都应该重载TWinControl的虚函数WndProc来进行处理窗口消息的工作
  4. MySql存储过程、函数
  5. Android 编译错误——布局 Error parsing XML: not well-formed (invalid token)
  6. Python之内置函数再总结
  7. django-admin 设计User外键,设计model
  8. 编译安装 nginx的http_stub_status_module监控其运行状态
  9. Adjust Linux Mint Mouse Scroll (Normal/Reverse)
  10. MSDN使用