【转】Android源码学习(2)使用Git和Repo进行版本管理

原文网址: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就可以了。

原文地址:https://www.cnblogs.com/wi100sh/p/4535412.html