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),前端的同事有空也可以探索下。

相关推荐
blues_C1 小时前
如何在网页端使用 IDE 高效地阅读 GitHub 源码?
ide·github
全栈老实人_2 小时前
考研互学互助系统|Java|SSM|VUE| 前后端分离
java·开发语言·tomcat·maven
天天进步20152 小时前
Java全栈项目实战:校园报修服务系统
java·开发语言
Themberfue2 小时前
Java 网络原理 ①-IO多路复用 || 自定义协议 || XML || JSON
xml·java·开发语言·网络·计算机网络·json
wm10432 小时前
JavaEE 3大组件 Listener Servlet Filter
java·servlet·java-ee
疯一样的码农3 小时前
基于Spring Boot + Vue3实现的在线商品竞拍管理系统源码+文档
java·spring boot·后端
m0_748251354 小时前
【SpringBoot】日志文件
java·spring boot·spring
m0_748234714 小时前
Java-33 深入浅出 Spring - FactoryBean 和 BeanFactory BeanPostProcessor
java·开发语言·spring
知初~4 小时前
java相关学习文档或网站整理
java·开发语言·学习
码农小灰4 小时前
什么是缓存穿透、缓存击穿、缓存雪崩,在项目中是如何解决和预防?它们分别会带来什么危害?
java·缓存