repo 获取各个库的tag代码或者分支代码
关于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代码或者分支代码的更多相关文章
- Android获取cpu和内存信息、网址的代码
android获取手机cpu并判断是单核还是多核 /** * Gets the number of cores available in this device, across all proce ...
- 项目中通过Sorlj获取索引库中的数据
在开发项目中通过使用Solr所提供的Solrj(java客户端)获取索引库中的数据,这才是真正对项目起实质性作用的功能,提升平台的检索性能及检索结果的精确性 第一步,引入相关依赖的jar包 第二步,根 ...
- selenium常用操作,查找元素,操作Cookie,获取截图,获取窗口信息,切换,执行js代码
目录: 1. 常用操作 2. 查找元素 3. 操作Cookie 4. 获取截图 5. 获取窗口信息 6. 切换 7. 执行JS代码 简介 selenium.webdriver.remote.webdr ...
- soapUI使用-DataSource获取oracle库中的参数
soapUI使用-DataSource获取oracle库中的参数 下载mysql和oracle驱动包:http://pan.baidu.com/s/1i3sy1MH 放在Program Files\S ...
- JS获取屏幕,浏览器窗口大小,网页高度宽度(实现代码)_javascript技巧_
JS获取屏幕,浏览器窗口大小,网页高度宽度(实现代码)_javascript技巧_--HTML5中文学习网 http://www.html5cn.com.cn/shili/javascripts/79 ...
- JS和Jquery获取和修改label的值的示例代码
abel标签在JS和Jquery中使用不能像其他标签一样用value获取它的值,下面有个不错的示例,希望大家可以学习下 来源: < JS和Jquery获取和修改label的值的示例代码 & ...
- 定时获取MySQL库的大小
定时获取MySQL库的大小 获取数据库单个库的大小命令 [root@admin ~]# cat db_size.txt mysql -h 192.8.1.1 -uUSER -pPASSWORD -e' ...
- mysq在某一刻同时获取主从库的位置点
在从库进行锁表操作flush table with read lock, 通过show slave status\G 获取对应主库的位置点: show slave status\G********** ...
- PHP获取访问页面HTTP状态码的实现代码
方法一 $header_info=get_headers('//www.jb51.net/'); echo $header_info[0]; //耗时 0.67~0.78 方法二 $ch = curl ...
随机推荐
- curl命令例解
curl -i --url "https://open.abc.com/ddn/purge/ItemIdReceiver" \-X "POST" \-u &qu ...
- Netty 学习笔记(1)通信原理
前言 本文主要从 select 和 epoll 系统调用入手,来打开 Netty 的大门,从认识 Netty 的基础原理 —— I/O 多路复用模型开始. Netty 的通信原理 Netty 底层 ...
- 【转】【WPF】WPF中的Button的MouseDown事件不触发问题
按照WPF的帮助说明,某些控件的路由事件被内部处理了,已经被标记为Handled,自行定义的事件处理代码便不再起作用了,有时候会很郁闷! 不过WPF提供了必要的方法. 1)使用相应的Preview事件 ...
- 返回枚举中的desciption
/// <summary> /// 返回枚举中的desciption /// </summary> /// <param name="value"&g ...
- int和Integer有什么区别
Java是一个近乎纯洁的面向对象编程语言,但是为了编程的方便还是引入了基本数据类型,但是为了能够将这些基本数据类型当成对象操作,Java为每一个基本数据类型都引入了对应的包装类型(wrapper cl ...
- k8s(3)-Pods和Nodes的概念
Pod是什么? 在前面创建部署时,Kubernetes创建了一个Pod来托管您的应用程序实例.Pod是一个Kubernetes抽象,表示一组一个或多个应用程序容器(如Docker或rkt),以及这些容 ...
- python从FTP下载文件
#!/usr/bin/python # -*- coding: utf-8 -*- """ FTP常用操作 """ from ftplib ...
- 跨平台桌面程序框架Electron
https://www.npmjs.com/ js库
- poj 2074
哎怎么说,感觉现在处理平面上点线的题已经比较熟练了. 这题就离散化然后搞个前缀和就没了. 准备开始进一步的自闭了. 下面是disguss的一些样例... 其实是我自己写错了个地方,本来能1A的. #i ...
- 浏览器打开exe文件
<win-r> regedit 打开注册表,然后自定义协议 自定义协议注册表.reg 打开后导入 Windows Registry Editor Version 5.00 [HKEY_CL ...