原文网址:http://blog.chinaunix.net/uid-26074270-id-2458828.html

Android项目采用Git和Repo进行版本管理。在大多数情况下,Git都可以满足用户的需求。然而,由于Android项目过于庞大,想要简单、高效的管理这一百多个Git库,并不是一件容易的事情。Repo正是基于此需求,对Git命令部分封装,用来简化一些跨网络的操作。

安装Repo

  • 创建repo所在的目录,并将目录加到PATH环境变量中

    1. $ mkdir ~/bin
    2. $ PATH=~/bin:$PATH
  • 下载repo bootstrap脚本,并赋予可执行权限
    1. $ curl https://dl-ssl.google.com/dl/googlesource/git-repo/repo > ~/bin/repo
    2. $ chmod a+x ~/bin/repo
  • 创建工作目录
    1. $ mkdir WORKING_DIRECTORY
    2. $ cd WORKING_DIRECTORY
  • 初始化Repo客户端
    1. $ repo init https://android.googlesource.com/platform/manifest -b android-4.0.1_r1
  • 同步获取源代码
    1. $ repo sync

Repo基本工作流程

  1. 使用repo start命令创建新的工作分支
  2. 改动代码
  3. 使用git add命令将改动通知Git
  4. 使用git commit命令提交改动
  5. 使用repo update命令将改动提交到代码评审服务器

Repo命令及工作流程图示
详情请参考http://source.android.com/source/version-control.html

 
如果在repo sync的时候,遇到如下错误:
  1. *Initializing project platform/bionic ...
  2. fatal: '../platform/bionic.git' does not appear to be a git repository
  3. fatal: The remote end hung up unexpectedly
  4. error: Cannot fetch platform/bionic*

说明你的repo好久没有更新了,解决的办法很简单,更新repo工具,并且新建源码目录,重新执行repo init和repo sync就可以了。

【转】Android源码学习(2)使用Git和Repo进行版本管理的更多相关文章

  1. Android源码学习之装饰模式应用

    首先得了解最基础的装饰器模式 参考 设计模式之八 --- 装饰模式(Decorator) 参考链接:http://blog.csdn.net/cjjky/article/details/7478788 ...

  2. Android 源码下载方法(Git 方式clone)

    Android源码对于Android开发者来说,迟早有一天你会用到的,所以就记录一下,分享给读者,希望对读者有用 这里需要使用到Git相关知识,不清楚的可以先阅读,了解的可以跳过 Git-Tortoi ...

  3. Android源码-学习随笔

    在线代码网站1:http://grepcode.com/project/repository.grepcode.com/java/ext/com.google.android/android/ 书籍: ...

  4. Android源码学习之模板方法模式应用

    一.模板方法模式定义 模板方法模式定义: defines the skeleton of an algorithm in a method, deferring some steps to subcl ...

  5. Android源码学习(一) 数据集观察者

    查看Android源码发现这个,决定记下下来. 1.在android.database这个包下面,存在这样一个抽象类DataSetObserver,里面包括onChanged()和onInvalida ...

  6. Android 源码学习

    工具篇:如何使用 Visual Studio Code 阅读 Android 源码:https://jekton.github.io/2018/05/11/how-to-read-android-so ...

  7. Android源码学习

    http://android-wheel.googlecode.com/svn/trunk/android-wheel-read-only 在github上面有一个叫做 android-wheel 的 ...

  8. [Android] repo 下载Android源码(国内镜像)

    reference : http://blog.csdn.net/shenlan18446744/article/details/51490560 repo 下载Android源码(国内镜像) 下载r ...

  9. Android学习系列(38)--Android源码下载和编译

    前面多篇文章介绍到如何下载和编译Android或者CM源码,不过一直都是放在<拓展系列>里.随着学习的深入,android源码是非常有参考和学习价值,强烈推荐大家都去下载,编译,学习,所以 ...

随机推荐

  1. Java Spring各种依赖注入注解的区别

    Spring对于Bean的依赖注入,支持多种注解方式: @Resource javax.annotation JSR250 (Common Annotations for Java) @Inject ...

  2. jsp中iframe所包含的页面调用父页面的function方法

    a.jsp中写了注册的Ext窗体loginWindow,也用iframe包含了另一个b.jsp,当在b.jsp中也有点击注册的链接,这时需要用到调用a.jsp中的loginWindow,因为如果你重新 ...

  3. Laravel-高级篇-Auth-数据迁移-数据填充

    (慕课网_轻松学会Laravel-高级篇_天秤vs永恒老师_http://www.imooc.com/learn/702) 一.生成Auth所需文件 在Artisan控制台输入以下命令 php art ...

  4. js计算日期天数差-2013-9-26

    function daymath(sdate, edate) {             var startdate = sdate;             var enddate = edate; ...

  5. Android中自定义ActionBar的背景色等样式style

    Android中想要去自定义ActionBar的背景色等样式. [折腾过程] 1.自己找代码,发现对应的配置的地方了: AndroidManifest.xml ? 1 2 <applicatio ...

  6. Java清洁:终结处理和垃圾回收

    一般情况:Java有垃圾回收机制负责回收无用对象占据的内存资源. 特殊情况:假定你的对象(并非使用new)获得一块特殊的内存区域,由于垃圾回收器只知道释放那些经由new分配的内存,所以它不知道如何释放 ...

  7. 安装centos6.3

    废话少说,今天安装镜像文件.版本为centos6.3 1.首先,我们已经创建了一个空的虚拟机,此时,打开虚拟机,选择的镜像文件,点击ok自己下载 2.点击绿色的三角箭头,你会看到下面页面.(如果报错T ...

  8. <经验杂谈>C#/.Net中xml的Serialization序列化与DeSerializetion反序列化

    1.先讲概念:.Net Framework提供了对应的System.Xml.Seriazliation.XmlSerializer负责把对象序列化到XML,和从XML中反序列化为对象.Serializ ...

  9. 英文长单词断行 word-break VS word-wrap

    你真的了解word-wrap和word-break的区别吗? 这两个东西是什么,我相信至今还有很多人搞不清,只会死记硬背的写一个word-wrap:break-word;word-break:brea ...

  10. Gson 简易笔记

    #Gson 简易笔记 之前用 fastjson.它连个规矩的文档都没有,而且在github的wiki上写着: gson的g可能是"龟"拼音的缩写,龟速的json库." 各 ...