关于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. 查看安装的react-native和react版本

    转:http://blog.csdn.net/miss_ok/article/details/52777115 npm info React-native(目前是0.34.1) 知道最新版本后,通过以 ...

  2. vscode + gradle 创建 java 项目 - java language server无法启动

    1.在系统上安装一个版本的gradle,用`gradle init --type java-application`创建一个默认的java项目,假设项目目录是hellojava 2.vscode写ja ...

  3. 解决vscode无法安装golang相关插件的问题 - 即无法直连golang.org的问题

    喜欢挂vpn或者代理的请无视本文. 其实golang.org上的插件在github.com上都有镜像,直接 git clone https://github.com/golang/tools git ...

  4. OpenGL着色器入门简介

    说明:本文翻译自LearnOpengl经典教程,OpenGL着色器基础介绍的比较通俗易懂,特总结分享一下! 为什么要使用着色器?我们知道,OpenGL一般使用经典的固定渲染管线来渲染对象,但是随着Op ...

  5. 万能分布式消费框架,添加基于redis中间件的方式。

    框架目的是分布式调度起一切任何函数(当然也包括调度起一切任何方法). 之前写的是基于rabbitmq的,作为专用的消息队列好处比redis的list结构好很多.但有的人还是强烈喜欢用redis,以及r ...

  6. Thread类的join()方法

    public class Demo { /** * Thread类的join()方法 * -------------------------------- * 1)join() * 2)join(lo ...

  7. python print 打印的数据包含中文,打印报错UnicodeDecodeError: 'gbk' codec can't decode bytes in position 459-460: illegal multibyte sequence解决办法

    python 2.7 print 的数据中若包括中文,打印则会报错UnicodeDecodeError: 'gbk' codec can't decode bytes in position 459- ...

  8. Sublime Text 3 3143 注册码和遇到的PyV8无法下载问题

    packagecontrol官网:https://packagecontrol.io/installation sublime安装之后,安装Package Control管理插件. sublime3 ...

  9. Dart 语言简易教程系列

    google Fuchsia系统 及 dart语言简介 在 InteIIiJ IDEA 中搭建 Dart 的开发环境 Dart Linux 开发环境搭建 Dart 语言简易教程(一) Dart 语言简 ...

  10. 11.15luffycity(7)

    2018-11-15 17:43:50 还有一点路飞项目就结束啦! 周日打算回去! 双十一的耳机到啦,音质确实不错!2333! 等着项目做完,完整总结一下! 越努力,越幸运!永远不要高估自己!!!! ...