repo安装与简单使用
Posted 玄道公子
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了repo安装与简单使用相关的知识,希望对你有一定的参考价值。
一、概述
当一个大的项目需要拆分成很多的子项目,或者说一个软件系统拆分成多个子系统。 每一个子项目或者子系统都对应一个git repository。这种需求在实际项目当中是很常见的,有的可能就直接写一个shell脚本来实现同时拉各个代码仓库的动作,但这样做难免笨拙。 特别是要做系统级别的整体分支或版本发布时,就不太方便,因此这里就可以使用repo来进行管理,像android这么大的项目也都是通过repo来进行管理的。
二、安装
这里以Ubuntu为例来说明。
- 第一步: 创建repo安装目录
mkdir ~/bin
或者,可以创建一个隐藏文件夹,这样避免被误操作删除, 在正常使用ls命令的时候,
也不会在home目录下看到这个文件件(对应的后续步骤中的~/bin 修改为~/.bin)
mkdir ~/.bin
- 第二步:下载repo
wget https://storage.googleapis.com/git-repo-downloads/repo -P ~/bin/
或者
curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
- 第三步: 改变执行权限并设置环境变量(就好比“安装”)
chmod a+x ~/bin/repo
export PATH=~/bin:$PATH
最后设置环境变量这一句,最好是添加到 ~/.bashrc 文件中的最末尾位置,
这样就可以自动设置好repo的环境变量。
当你执行完以上三个步骤之后,如果能访问Google的网站的话,就可以正常使用repo了。但咱们这边如果不翻墙的话,显然是没法访问的,在使用repo init的时候,就会出现如下的错误:
Cannot get https://gerrit.googlesource.com/git-repo/clone.bundle
因此这里还需要第四步:
- 第四步: 设置REPO_URL环境变量
如第三步一样,在~/.bashrc 文件的最末尾添加如下内容:
export REPO_URL=https://mirrors.tuna.tsinghua.edu.cn/git/git-repo/
这里使用的是清华大学的镜像源
经过这四步就可以正常的使用repo了。
三、简单使用
一般来说repo比较常用的命令有如下几个:
- repo init
repo init -u <URL> [<OPTIONS>]
-u 指定repo仓库(即manifest仓库)的url地址, 后面[<OPTIONS>]就是可选的命令参数:
Manifest options:
-m :在manifest仓库中选择一个xml文件,如果没有设置,就使用default.xml
-b:选择一个maniest仓库中的一个特殊的分支
repo Version options:(一般来说几乎不会使用这下面的这些选项)
--repo-url:设定repo的版本库地址。
--repo-branch:设定需要检出的分支。
--no-repo-verify:设定不要对repo的里程碑签名进行严格的验证。
--mirror:只在repo第一次初始化的时候使用,建立本地镜像
- repo sync
repo sync
默认同步xml文件中定义的所有仓库,也可以单独指定sync哪个或哪些仓库,如下:
repo sync name1 name2 name3 ...
除此之外还有如下选项:
-j : 多任务,一般8核心可以开到16任务,过多会起反作用
-c: 只下载当前分支代码
-d: 让工程回退到manifest指定的版本
-f: 如果某个工程同步失败,继续同步
- repo start
repo start BRANCH_NAME PROJECT_NAME
创建分支,以上命令就是 给仓库‘PROJECT_NAME’创建名为‘BRANCH_NAME’的本地分支,
如果需要给repo管理的所有仓库创建本地分支,其命令为:
repo start BRANCH_NAME --all
此命令会更新manifest xml文件中的信息给对应的远程分支 创建相应的本地分支
- repo status
repo status [project list]
显示当前工作目录的状态或指定工程名或者工程路径的状态
更多详细的命令,可以问度娘,或者使用help参数查看
以上是关于repo安装与简单使用的主要内容,如果未能解决你的问题,请参考以下文章