g公司使用Gerrit改善评审流程. 比较麻烦.gerrit提交后会触发vertifyCI, 实施代码扫描.

这一堆过程, 打印出一堆信息, 都在log中, 所以处理log就需要自己写shell了.

ssh -p  xxxxx@xxxxxx gerrit query --format=JSON --patch-sets --all-approvals --commit-message --comments change:3920147

#提取log中的http:// url, 取第一条
ssh -p 29418 xxxxx@xxxxxx gerrit query --format=JSON --comments change:3920147|head -n 1 | jq '.comments'|jq '.[] | .message'|grep -oh "https.*/" | head -n 1 #log

java -jar ~/bin/jenkins-cli.jar -s https://xxxxxxx/xxxxx/ -auth xxxxx:xxxxxx console jobName 472

其中用到几个工具, jq, 是一个解析json的工具, 功能非常强大:

jq

https://stedolan.github.io/jq/manual/#Basicfilters

https://www.cnblogs.com/bhlsheji/p/5345192.html

https://www.cnblogs.com/lurenjiashuo/p/bash-json-jq.html

gerrit query

https://gerrit-documentation.storage.googleapis.com/Documentation/2.13.7/cmd-query.html

https://gerrit-documentation.storage.googleapis.com/Documentation/2.13.7/json.html

另外关于正则表达式的贪婪非贪婪模式:

https://www.cnblogs.com/xudong-bupt/p/3586889.html

https://gerrit-documentation.storage.googleapis.com/Documentation/2.13.7/user-search.html

grep

grep 仅显示匹配部分,(默认是显示匹配到的行)

grep -oh "abc" xxx.log

abc可以为正则表达式

git & gerrit & shell的更多相关文章

  1. Git Gerrit使用

    Git Gerrit 操作都用 git bash操作: 如果想用 cmd 或者 PowerShell,系统环境变量 Path 添加 Git 安装路径,如: C:\Program Files (x86) ...

  2. git/gerrit的简介

    gerrit和git   1.git Git是什么? Git是目前世界上最先进的分布式版本控制系统. SVN是集中式版本控制系统. Git与svn比较 相同:能记录文件的所有更改记录.这样是为了大量更 ...

  3. Git + Gerrit 操作备忘

    Git review 作用 可以用来提交代码审核到Gerrit 安装 使用pip 安装 git-review 插件,执行 sudo -H pip install git-review 使用示例 可以参 ...

  4. Git Gerrit Repo User Manual

                      Git Repo Gerrit User Manual Revision History   Revision # Description Date Author ...

  5. git + gerrit push 代码问题

    关于refs/for 和 refs/heads: 1.     这个不是git的规则,而是gerrit的规则, 2.     Branches, remote-tracking branches, a ...

  6. Centos 下 Jenkins2.6 + Git + Maven Shell一件部署与备份

    使用Jenkins2.6 集成Maven与Git插件做持续集成,同时编写Shell脚本备份与发布(需要稍微知道点Linux/毕竟基于Centos PS:本人Linux也是菜鸡) - 下载Jenkins ...

  7. Git Gerrit Code Review

    Gerrit Code Review | Gerrit Code Reviewhttps://www.gerritcodereview.com/

  8. Android代码编译环境配置 “Gerrit和Git环境配置”

    Gerrit和Git环境配置可以参考<git&gerrit操作指导> 步骤1. 先在Gerrit中创建新的账户: 步骤2. 在新的客户端上生成密钥(可以使用的是生成的公钥): 步骤 ...

  9. [原创]升级Gerrit的commit-msg,检查git commit时必须填写开发任务编号TaskID

    公司使用git+gerrit+jenkins进行持续集成实践,其中gerrit用来进行Code Review.另外我们自己研发了一套敏捷项目管理系统TPM(TeamPlus Management),用 ...

随机推荐

  1. 前端开发学习笔记 - 1. Node.JS安装笔记

    Node.JS安装笔记 Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine. Node.js uses an ...

  2. h5离线缓存

    离线缓存:application cache 什么是离线缓存: 离线缓存可以将站点的一些文件缓存到本地,它是浏览器自己的一种机制,将需要的文件缓存下来,以便后期即使没链接网络,被缓存的页面也可以展示 ...

  3. ORA-00346,借助_allow_resetlogs_corruption开库

    Mon Aug 06 10:15:08 2018Errors in file /data/app/oracle/diag/rdbms/prod/prod/trace/prod_ora_6831.trc ...

  4. VMware 虚拟化编程(6) — VixDiskLib 虚拟磁盘库详解之二

    目录 目录 前文列表 VixDiskLib 虚拟磁盘库 VixDiskLib_Open 打开 VMDK File VixDiskLib_Read 读取 VMDK File 数据 VixDiskLib_ ...

  5. 07 归档模式 Active redo log丢失或损坏的恢复

    环境同上一篇 模拟处于active状态的redo log损坏 sesion 1 SYS@ orcl >/ GROUP# THREAD# SEQUENCE# BYTES BLOCKSIZE MEM ...

  6. Spring002--实现读写分离(Mysql实现主从复制)

    Spring AOP实现读写分离(Mysql实现主从复制) 本文来自于博客:http://www.cnblogs.com/bjlhx/p/8297460.html 一.背景 一般应用对数据库而言都是“ ...

  7. windows 端 nginx怎么配置 虚拟机的fastdfs文件管理系统

    FastDFS的安装这里不演示 nginx.conf #图片服务 upstream img_server_pool{ server 192.168.133.131:80 weight=10; } #学 ...

  8. Count on a tree SPOJ 10628 主席树+LCA(树链剖分实现)(两种存图方式)

    Count on a tree SPOJ 10628 主席树+LCA(树链剖分实现)(两种存图方式) 题外话,这是我第40篇随笔,纪念一下.<( ̄︶ ̄)↗[GO!] 题意 是说有棵树,每个节点上 ...

  9. HDU 5945 题解(DP)(单调队列)

    题面: Fxx and game Time Limit: 3000/1500 MS (Java/Others) Memory Limit: 131072/65536 K (Java/Others) T ...

  10. 27、前端知识点--webpack面试题(二)

    webpack面试题总结 本文主要是对webpack面试会常被问到的问题做一些总结,且文章会不断持续更新 1.webpack打包原理 把所有依赖打包成一个 bundle.js 文件,通过代码分割成单元 ...