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.rhkb.cn/news/260378.html

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

相关文章

设计模式简介

设计模式介绍: 设计模式是对大家实际工作中写的各种代码进行高层次抽象的总结,其中最出名的当属 Gang of Four(GoF)的分类了,他们将设计模式分类为 23 种经典的模式,根据用途我们又可以分为三大类,分别为创…

openGauss 5.0.0全密态数据库应用小试

前言 openGauss HCIA教材中,安全是一个重要的章节,在实际项目中,随着网络安全和信息安全形势的变化,企业也越来越重视数据库安全。去年在HALP内部进行openGauss培训时,安全特性就被学员们提出来要重点讲解&#xff0c…

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

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

Pandas数据库大揭秘:read_sql、to_sql 参数详解与实战篇【第81篇—Pandas数据库】

Pandas数据库大揭秘:read_sql、to_sql 参数详解与实战篇 Pandas是Python中一流的数据处理库,而数据库则是数据存储和管理的核心。将两者结合使用,可以方便地实现数据的导入、导出和分析。本文将深入探讨Pandas中用于与数据库交互的两个关键方…

【Go语言】Go项目工程管理

GO 项目工程管理(Go Modules) Go 1.11 版本开始,官方提供了 Go Modules 进行项目管理,Go 1.13开始,Go项目默认使用 Go Modules 进行项目管理。 使用 Go Modules的好处是不再需要依赖 GOPATH,可以在任意位…

JS逆向进阶篇【去哪儿旅行登录】【中篇-滑动轨迹破解补浏览器环境破参数】

目录: 每篇前言:0、整体分析1、逆向轨迹snapshot(1)分析:(2)Python轨迹生成:(3)AES加密:(4)轨迹加密:&#xf…

机器学习中梯度下降法的缺点

机器学习中的梯度下降法是一种寻找函数最小值的优化算法,广泛应用于训练各种模型,尤其是在深度学习中。尽管其应用广泛,但梯度下降法也存在一些不可忽视的缺点: 1. 局部最小值和鞍点 局部最小值问题: 对于非凸函数&a…

milvus insert数据在s3的存储

insert数据在s3的存储 对segment进行flush操作,会将数据持久化至s3对象存储。 相关核心代码位置: ibNode.flushManager.flushBufferData()主要代码在flushBufferData()函数。 代码位置:internal\datanode\flush_manager.go // flushBufferData notifies flush …

【Docker】Docker存储卷

文章目录 一、什么是存储卷二、为什么需要存储卷三、存储卷分类四、管理卷Volume创建卷方式一:Volume 命令操作方式二:-v 或者--mount 指定方式三:Dockerfile 匿名卷 操作案例Docker 命令创建管理卷Docker -v 创建管理卷Docker mount 创建管理…

java中容易被忽视的toString()方法

之前一直认为toString就是将数据转换成字符类型,直到最近写出了一个bug才对toString有了新的认识 不同数据类型,toString() 有不同的操作 定义一个student类,包含姓名 String类型、性别 String类型、年龄 int 类型、分数列表 String类型的li…

适合tiktok运营的云手机需要满足什么条件?

TikTok作为一款全球热门的社交媒体平台,具有无限的市场潜力。然而,卖家在运营过程中常常会面临到视频0播、账号被降权、限流等问题,甚至可能因为多人同时使用一个IP而导致封号的风险。为了规避这些问题,越来越多的卖家将目光投向了…

论UI的糟糕设计:以百度网盘为例

上面这一排鼠标一经过就会弹出来(不是点才弹出来),然后挡住你的各种操作, 弹出来时你就必须等它消失,卡一下才能操作。 在用户顺畅地操作内容时,经常就卡一下、卡一下、卡一下…… 1、比如鼠标从下到上&am…

《基于CEEMDAN一小波包自适应阈值混凝土声发射信号降噪研究》算法思路笔记

![1]杨智中,林军志,汪魁等.基于CEEMDAN-小波包自适应阈值混凝土声发射信号降噪研究[J].振动与冲击,2023,42(03):139-149.DOI:10.13465/j.cnki.jvs.2023.03.016.](https://img-blog.csdnimg.cn/direct/9814ff64cc474cd3aa06ecaea60f2f75.png) 首先对周期循环荷载作用下混凝土试…

【RPG Maker MV 仿新仙剑 战斗场景UI (二)】

RPG Maker MV 仿新仙剑 战斗场景UI 二 战斗指令菜单原仙剑战斗指令图RMMV战斗指令对应代码战斗指令菜单代码效果 战斗指令菜单 原仙剑战斗指令菜单是使用方向键控制,同时按照使用情况正好对应四个指令和四个方向,同时没有选中的菜单用黑色透明图片覆盖&…

App启动优化笔记 1

app大致的启动流程。有Launcher进程,system_server进程,zygote进程,APP进程。 Launcher进程:启动activity来启动应用 system_server进程:(ams是其中的一个binder):发送一个socket消息给Zygote。 zygote进程:收到消息后,fork新的进程,---》app进程启动 APP进程:…

国际语言代码 Language Code 对照表速查

前言 语言代码是英国教育社会学家伯恩斯坦的术语。指在一定的语言集团中,特定的人群在特定的社会环境下使用的特定的言语。分为限定代码(restricted code)和精制代码(elaborated code)。语言代码是由字母或数字组成的…

STM32引脚重定义问题

最近在搞资源管理,发现有些引脚不能用 比如这个PE引脚。我想用他输出PWM,但是不能用,我也重定义了,还是不能用。回去翻看了技术手册。 RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO, ENABLE); //重映射引脚功能,需…

MB-106UP——进口抛光树脂的技术优势

超纯水的制备和稳定性一直是相关领域极为重视的,那么超纯水中常会用到的抛光树脂技术,进口和国产对比起来究竟谁更甚一筹呢?接下来为大家分享的技术就是超纯水制备中常会用到的进口品牌:美国Tulsimer杜笙树脂中抛光树脂MB-106UP的…

CORS就是跨域吗?

首先,跨域的域是什么? 跨域的英文是:Cross-Origin。 Origin 中文含义为:起源,源头,出生地。 在跨域中,"域"指的是一个 Web 资源(比如网页、脚本、图片等)的…

压缩感知(Compressed Sensing,CS)的基础知识

压缩感知(Compressed Sensing,CS)是一种用于信号处理的技术,旨在以少于奈奎斯特采样定理所要求的样本频率来重构信号。该技术利用信号的稀疏性,即信号可以用较少的非零系数表示。压缩感知在图像获取中的应用使得在采集…