关于mainfest.xml中的参数格式和说明,可以自己查阅,此处不详细写,我们知道project中的reversion可以指定分支,tag,commitid等,那么如何书写呢?

首先克隆mainfest仓库,并切换到要工作分支,比如我的分支是develop

git clone ssh://gerrit@192.168.8.250:29418/phoenix/manifest

cd mainfest.xml

然后按照如下分类参考修改default.xml

(1)分支:reversion可以直接写分支的名字,如下:

<project path="SDK/upnp" revision="develop" name="test/upnp"/>

<project path="SDK/base" revision="master" name="test/base"/>

注意:

修改完后提交改动到gerrit: git add default.xml; git commit -m "modify default.xml";git push origin HEAD:refs/for/develop

repo命令获取分支代码

  可以使用-b 指定分支,即 repo init -u gerrit:phoenix/manifest -b develop 

                    然后执行repo sync -j4 检出或者同步代码

(2) tag:不能直接就写一个tag名字,要加前缀refs/tags/,如下:

<project path="SDK" revision="refs/tags/tag_r60008_18214" name="test/SDK"/>

<project path="SDK/base" revision="refs/tags/tag_r60008_18214" name="test/base"/>

注意:

revision是tag的时候,一定要加前缀:refs/tags/

修改完后提交改动到gerrit: git add default.xml; git commit -m "modify default.xml";git push origin HEAD:refs/for/develop

并标记tag,比如tag_r60008_18214,推tag 到gerrit上。

     repo命令获取分支代码:

     repo init -u gerrit:phoenix/manifest -b refs/tags/tag_r60008_18214

                     然后执行repo sync -j4 检出或者同步代码

如上中的“repo init -u gerrit:”的“gerrit”的设置可以参考https://www.cnblogs.com/zndxall/p/10007755.html中的配置

repo start命令创建的分支是基于mainfest.xml 中的revision来在本地创建新分支。

(3)repo切换分支

操作完repo sync -j4后,执行repo branches, 会看到显示 no branch ,这时如果想让代码切换到你想要的分支,需要执行repo forall 命令

(1)比如要把所有仓库都切换到develop分支,可以执行:repo forall -c git checkout develop

(2)比如只需要切换某个分支到develop分支,需要执行:repo forall  [project]  -c git checkout develop

这里的project 需要采用repo forall -c pwd 获取,然后用显示的工程路径替换[project],

比如我执行了repo forall -c pwd 显示如下:

我想只想切换AndroidReceiver到develop分支下,那么我只要执行:

repo forall  /root/src/workspace/my_repo/phoenix/AndroidReceiver -c git checkout develop 即可。

repo 获取各个库的tag代码或者分支代码的更多相关文章

  1. Android获取cpu和内存信息、网址的代码

      android获取手机cpu并判断是单核还是多核 /** * Gets the number of cores available in this device, across all proce ...

  2. 项目中通过Sorlj获取索引库中的数据

    在开发项目中通过使用Solr所提供的Solrj(java客户端)获取索引库中的数据,这才是真正对项目起实质性作用的功能,提升平台的检索性能及检索结果的精确性 第一步,引入相关依赖的jar包 第二步,根 ...

  3. selenium常用操作,查找元素,操作Cookie,获取截图,获取窗口信息,切换,执行js代码

    目录: 1. 常用操作 2. 查找元素 3. 操作Cookie 4. 获取截图 5. 获取窗口信息 6. 切换 7. 执行JS代码 简介 selenium.webdriver.remote.webdr ...

  4. soapUI使用-DataSource获取oracle库中的参数

    soapUI使用-DataSource获取oracle库中的参数 下载mysql和oracle驱动包:http://pan.baidu.com/s/1i3sy1MH 放在Program Files\S ...

  5. JS获取屏幕,浏览器窗口大小,网页高度宽度(实现代码)_javascript技巧_

    JS获取屏幕,浏览器窗口大小,网页高度宽度(实现代码)_javascript技巧_--HTML5中文学习网 http://www.html5cn.com.cn/shili/javascripts/79 ...

  6. JS和Jquery获取和修改label的值的示例代码

    abel标签在JS和Jquery中使用不能像其他标签一样用value获取它的值,下面有个不错的示例,希望大家可以学习下 来源:  <  JS和Jquery获取和修改label的值的示例代码  & ...

  7. 定时获取MySQL库的大小

    定时获取MySQL库的大小 获取数据库单个库的大小命令 [root@admin ~]# cat db_size.txt mysql -h 192.8.1.1 -uUSER -pPASSWORD -e' ...

  8. mysq在某一刻同时获取主从库的位置点

    在从库进行锁表操作flush table with read lock, 通过show slave status\G 获取对应主库的位置点: show slave status\G********** ...

  9. PHP获取访问页面HTTP状态码的实现代码

    方法一 $header_info=get_headers('//www.jb51.net/'); echo $header_info[0]; //耗时 0.67~0.78 方法二 $ch = curl ...

随机推荐

  1. IOS逆向-砸壳笔记

    本人ios10.3.1 iphone6越狱机.方案三个. 方案一.dumpdecrypted.dylib 1. ssh到越狱机上,看WeChat可执行文件在哪. # ps aux|grep WeCha ...

  2. Activiti 工作流变量的修改方法

    修改方法: //此方法的更新会同时更新 ru_ 和 hi_的数据 @Override public Map<String, Object> updateProcessFormValue(S ...

  3. [转]decorator(HTML装饰器)

    原文地址:https://blog.csdn.net/jzh440/article/details/7770013 1>:每当遇到一个新的技术,首先我会问自己,这个技术是做神马的?用这个技术有神 ...

  4. oracle获取过去两年的今天时间

    获取过去两年的今天时间: SELECT last_day(ADD_MONTHS(ADD_MONTHS(sysdate,-12), ROWNUM - 1)) as monthlist FROM DUAL ...

  5. 每天学点Linux-切割命令split

    一种常见的需求是,有一个比较大的文件,需要把它切割成比较小的几个文件,在Linux系统中你就可以使用Split命令了.Split命令可以将一个大的文件按照文件大小或者行数切割成小文件.Split命令的 ...

  6. ASCII码与unicode字符集

    问题1:为什么需要字符ASCII码.unicode码等等???它们到底有什么作用? 首先要明白一个事实:在计算机中只能用一系列存储着的0和1,当我们把一个字符存放在计算机时,我们是如何表示常用的字符呢 ...

  7. 第四百零六节,自定义用户表类来继承Django的用户表类,

    第四百零六节,自定义用户表类来继承Django的用户表类, models.py from django.db import models # Create your models here. from ...

  8. Angular4中路由Router类的跳转navigate

    最近一直在学习angular4,它确实比以前有了很大的变化和改进,好多地方也不是那么容易就能理解,好在官方的文档和例子是中文,对英文不太好的还是有很大帮助去学习. 官方地址:https://angul ...

  9. Docker-堆栈stack(6)

    堆栈(Stack)的概念: 堆栈是一组相互关联的服务,它们共享依赖关系,并且可以协调和缩放在一起.单个堆栈能够定义和协调整个应用程序的功能,但是非常复杂的应用程序可能希望使用多个堆栈. 下面我们就开始 ...

  10. iOS - 国内注册境外 Apple id 账号

    注册前准备工作 需要手头MAC一台 AppStore下载VPN Plus FQ到美国(ipip.net 查看当前ip 是否是在境外 当前ip 在境外才可以哦) 动手搞起来 https://applei ...