idea代码review工具Code Review Helper使用介绍

之前在团队里面遇到一个关于代码review的问题,使用gitlab自己的还是facebook的Phabricator,很难看到整体逻辑,因为业务逻辑代码可能不在这次改动范围内,在去源库中找不好找。针对这个刚需,在网上找了一个idea的代码工具CodeReview IDEA 插件:Code Review Helper,它的主要功能有:

  • Alt+A快速添加注释
  • 行号旁边图标标识有检视意见的位置
  • 支持双击评审意见跳转到代码对应位置
  • 支持对评审意见的删除、修改
  • 支持评审意见内容导出为Excel表格
  • 支持将导出的Excel表格中的评审意见导入到IDEA中进行查看与管理。
  • 支持网络交互,适合团队协作场景使用
  • 支持评审字段的自行定制、或者团队统一定制

从功能上看,切实解决了在gitlab中无法快捷方便的看全整体业务的问题。

下来我简单介绍下它的使用。

一、安装Code Review Helper插件

在idea中选择Settings,在下面点击Plugins,在Marketplace里面输入Code Review Helper ,点击安装后重启idea,

如果出现如下界面CodeReview框,点击后出现这样的界面证明安装成功。

二、使用

在安装好之后,我们可以在idea中使用了。

(一)离线版

选中代码内容,然后alt+a可以打开添加评审意见的窗口,在窗口中添加评审信息后点击保存即可完成评审意见的添加,

点击保存后,可以在窗口中看到多了一条数据

并且在工程里面也可以看到,有一个标识,显示此处代码有被审核,鼠标放到黄色标识上,显示审核意见。

然后审核人员可以点击列表的Export按钮,导出一个execl,发给写代码的同事,那位同事在idea中点击Import按钮导入后,可以进行建议的确认

 

 导入之后,在列表里面点击列表数据,插件就会自动跳转到具体的文件和行数中,十分方便

之后进行状态的流转,再发回给审核人。

当然这个过程中,在审核人发现自己多加了想删除的需求,那就选择数据进行Delete  Seleted ,要想全删的话,点击Clear  All 就行。

(二)在线版

 上述这个虽然很好,但是要一直传文件就是很不方便,所以我咨询了作者 veezean ,

它主要的功能是简化了上面传文件过程为上传下载,流程改为:

具体步骤如下:

1、打开idea插件界面进行网络版本配置:

点击settings按钮,打开设置界面,可以切换界面中英文显示,然后切换到网络版本

在网络版本中,输入搭建好的服务端地址,点击连接测试成功后,再输入账号和密码,点击登录测试,验证成功后即可点击下方的保存按钮。 

2.设置完成后,会自动从服务端拉取已经配置好的评审字段配置信息、以及服务端的项目信息列表等。使用过程中用户也可以手动点击同步配置按钮,从服务端拉取最新的配置信息。

3.点击提交服务端,可以将本地的评审意见内容提交到服务端(如果有配置webhook通知,会收到相关消息推送)

4、选择具体项目以及拉取范围后,点击服务端下载可以从服务端拉取评审意见到本地IDEA中。

比如别人给我提了评审意见,我可以拉取到自己的IDEA中,双击跳转到对应的代码位置,进行问题的确认处理,确认完成后,可以在本地IDEA中对评审意见进行答复,答复完成后提交本地数据到服务端,完成整个review过程的闭环。

但是这个是依赖要建设一个服务端,具体安装教程可以见:

CodeReview IDEA 插件配套服务端使用教程 | Veezean 的小世界 (codingcoder.cn)

在写本次文章的时候,我发现作者在服务端还增加了一些自定义字段等功能,gitee仓库也增加了前端vue的版本:

CodeReviewServer_Portal: CodeReviewServer_Portal (gitee.com),前端的同事有空也可以探索下。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/692052.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

kali安装awvs报错error creating the database

修改host文件 vim /etc/hosts 加入 127.0.0.1 kali 重启再安装即可解决

软件实例分享,操作简单美发店会员登记记账本vip会员管理系统软件教程

软件实例分享,操作简单美发店会员登记记账本vip会员管理系统软件教程 一、前言 以下软件程序教程以 佳易王美发店会员管理系统软件V16为例说明 软件文件下载可以点击最下方官网卡片——软件下载——试用版软件下载 1、新会员可以直接使用手.机号,不需…

WordPress有没有必要选择付费主题

有必要。 能用付费的,就尽量别用免费的。 付费主题,情况也比较复杂,先讲一下付费主题的几种情况 1、是原创付费主题。是主题制作者原创的主题。 2、是把别人的主题二次开发的付费主题。这个有些是有原始开发者授权的,有些就是…

解libvirt中Domain类的方法

libvirt是一个用于管理虚拟化平台的开源工具包,提供了对不同虚拟化技术(如KVM、QEMU、Xen等)的统一管理接口。在libvirt中,Domain类表示虚拟机(domain)对象,并提供了丰富的方法来管理虚拟机的各…

Kernelized Correlation Filters KCF算法原理详解(阅读笔记)(待补充)

KCF 目录 KCF预备知识1. 岭回归2. 循环移位和循环矩阵3. 傅里叶对角化4. 方向梯度直方图(HOG) 正文1. 线性回归1.1. 岭回归1.2. 基于循环矩阵获取正负样本1.3. 基于傅里叶对角化的求解 2. 使用非线性回归对模型进行训练2.1. 应用kernel-trick的非线性模型…

如何使用IP代理解决亚马逊账号IP关联问题?

亚马逊账号IP关联问题是指当同一个IP地址下有多个亚马逊账号进行活动时,亚马逊会将它们关联在一起,从而可能导致账号被封禁或限制。 为了避免这种情况,许多人选择使用IP代理。 IP代理为什么可以解决亚马逊IP关联问题? IP代理是…

【LLVM】nsw和nuw的一个例子

nsw和nuw是LLVMIR提供给二元运算的flag。分别表示not signed wrap和not unsigned wrap。在LLVM2.6的更新日志中表述如下: The add, sub and mul instructions now support optional “nsw” and “nuw” bits which indicate that the operation is guaranteed to n…

欲速则不达,慢就是快!

引言 随着生活水平的提高,不少人的目标从原先的解决温饱转变为追求内心充实,但由于现在的时间过得越来越快以及其他外部因素,我们对很多东西的获取越来越没耐心,例如书店经常会看到《7天精通Java》、《3天掌握XXX》等等之类的书籍…

金山下的wps,无法删除水印

RT,正常删除水印的流程是,插入-水印-删除水印。 如图的操作方法不生效时,可用下面的方法 点击页眉或页脚,进入页眉的编辑模式,可以看到水印变成可以选中的状态,选中,点击delete或者鼠标右键删…

数衍科技连接CRM和营销系统,无代码API集成

{无代码开发的优势} 在数字化转型的浪潮中,无代码开发为企业带来了巨大的便利。数衍科技,这家专注于生态数据服务的国家高新技术企业,提供了一种无需依赖传统API开发的解决方案。企业可以通过其无代码开发平台,迅速构建数据连接&…

[AIGC] 垃圾回收算法

垃圾回收算法 垃圾回收是一种自动化的内存管理方法。其核心目标是找出程序中不再使用的动态分配的内存块,并将其标记为可重用,以便能够进行新的内存分配。 下面我们将介绍三种主要的垃圾回收算法:标记清除算法、复制算法和标记压缩算法。 …

如何使用Docker搭建YesPlayMusic网易云音乐播放器并发布至公网访问

文章目录 1. 安装Docker2. 本地安装部署YesPlayMusic3. 安装cpolar内网穿透4. 固定YesPlayMusic公网地址 本篇文章讲解如何使用Docker搭建YesPlayMusic网易云音乐播放器,并且结合cpolar内网穿透实现公网访问音乐播放器。 YesPlayMusic是一款优秀的个人音乐播放器&am…

知识蒸馏实战代码教学一(原理部分)

一、知识蒸馏的来源 知识蒸馏(Knowledge Distillation)源自于一篇由Hinton等人于2015年提出的论文《Distilling the Knowledge in a Neural Network》。这个方法旨在将一个大型、复杂的模型的知识(通常称为教师模型)转移到一个小型…

不同编程网站应当注意的点

文章目录 引入:洛谷:POJ:C语言:C: CF:个人建议:补充: 引入: 小伙伴们有没有遇到过这种情况:到一个新的网站去编程,思路、算法完全正确,提交上去却…

初识动态规划

斐波那契数列大家一定很熟悉吧**【f(n)f(n-1)f(n-2)】**,如果要通过代码来表达斐波那契数列也是很简单的,只需要一个简易的递归即可。但是由于递归的一些缺陷,自然有人会写出迭代方式 int Fun(int n){if(n1 || n2)return 1;first1;second1th…

kube-ovn自定义vpc

配置自定义vpc 开启自定义vpc网关配置 对于自定义的vpc网关需要configmap配置文件进行开启 ovn-vpc-nat-config中指定了自定义vpc网关的pod使用的镜像,自定义vpc的网关就是一个pod,在pod中通过配置iptables来实现了eip、snat、dnat、fip 对于ovn-vpc-n…

Adobe Me下载安装免费(专业视频和音频编码应用软件Me安装包下载2024【Windows版】)

Adobe全家桶下载方式 Ae下载 Pr下载 Ai下载 Me下载 将持续更新~ 文章目录 Adobe全家桶下载方式Me下载方式【点我获取下载链接】我们的网站一、Me简介二、链接内容包含1.Me软件 声明 Me下载方式【点我获取下载链接】 百度网盘下载:百度网盘下载夸克网盘下载&#…

[Bug解决] Invalid bound statement (not found)出现原因和解决方法

1、问题描述 在写了一个很普通的查询语句之后,出现了下面的报错信息 org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.xxx.oauth.mapper.WxVisitorQrBeanMapper.selectByComIdAndEmpId at org.apache.ibatis.binding.Mappe…

基于python+django+vue.js开发的健身房管理系统

功能介绍 平台采用B/S结构,后端采用主流的Python语言进行开发,前端采用主流的Vue.js进行开发。 功能包括:教练管理、会员管理、场地管理、设备管理、用户管理、日志管理、系统信息模块。 源码地址 https://github.com/geeeeeeeek/python_…

嵌入式C语言学习——基于Linux与GCC(二)

系列文章目录 一.C语言常用关键字及运算符操作 文章目录 系列文章目录内存四区指针指针概述指针 修饰符constvolatiletypedef 指针运算符多级指针 数组数组空间字符空间及地址 结构体、共用体定义、字节对齐位域 内存分布图段错误分析 内存四区 C/C语言的内存四区&#xff0…