NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

16 个好用的 Code Review 工具

  • 2020-01-13
  • 本文字数:3335 字

    阅读完需:约 11 分钟

16个好用的Code Review工具

Code Review 工具自动化了代码审核过程。它们有助于静态代码分析,这对于交付可靠的软件应用程序至关重要。市场上有太多的 Code Review 工具了,以至于为我们的项目选择一个合适的 Code Review 工具都会成为一种挑战。本文精选了 16 个 Code Review 工具,它们都具有最受欢迎的特性和最新的下载链接。该列表既包含了开源工具也包含了商业工具。

1. Review Assistant

Review Assistant 是 Visual Studio 的一个扩展。它支持 Visual Studio 2019、2017、2015、2013、2012 和 2010。Review Assistant 可以帮助创建审查请求并能在不离开 IDE 的情况下对请求做出响应。它支持 TFS、Subversion、Git、Mercurial 以及 Perforce。Review Assistant 将“代码审查板(Code Review Board)”窗口添加到 IDE 中。该窗口可用于管理用户所有可用的审查。


主要特性:


  • 灵活的代码审查

  • 支持在代码中讨论

  • 带有缺陷修复的迭代审查

  • 电子邮件通知

  • 丰富的集成功能

  • 报告和统计

  • 该插件可替换 Visual Studio 代码审查功能(Visual Studio Code Review Feature)


下载链接:


https://bit.ly/2Uw0a6M

2. Reshift

Reshift 是一个基于 SaaS(Software-as-a-Service,软件即服务)的软件平台,它可以帮助软件开发团队在部署代码到生产环境之前,更快地识别出代码中更多的漏洞。可以减少发现和修复漏洞的成本和时间,可以识别数据泄露的潜在风险,并能帮助软件公司达到合规性和法规要求。


主要特性:


  • 可以与 Github 和 Bitbucket 集成

  • 通过拉取请求(pull-request)这个工作流为团队的处理流程提供安全性,并可以避免切换到其他面板

  • 智能筛选,通过标记问题来减少超时误报

  • 跟踪每个开发人员功能分支的漏洞

  • 在合并到主干之前了解关键的漏洞

  • 如果引入了新漏洞,则关闭构建


下载链接:


https://bit.ly/33Oubj8

3. Gerrit

这是一个开源的轻量级工具,它是基于“Git 版本控制系统”来进行构建的。在所有用户都是受信提交者的项目环境中,该工具非常有用,因为该工具允许用户检查项目中所做的总体变更。


主要特性:


  • Gerrit 阻止用户直接推送到 Git 库

  • 允许我们在源代码中查找错误

  • 可以帮助我们创建新变更或更新现有的变更

  • 允许我们在开发者模式和 Git 库之间进行转换


下载链接:


https://www.gerritcodereview.com/

4. Codestriker

Codestriker 是一个开源的在线源码审查 Web 应用程序。此代码审查工具可以帮助我们在数据库中记录问题、注释和决策。它也可以用于代码检查(Code Inspections)。


主要特性:


  • 支持传统的文档审查

  • 它可以与 Bugzilla、ClearCase、CVS 等集成

  • Codestriker 已获得 GPL 许可


下载链接:


http://codestriker.sourceforge.net/

5. Phabricator

Phabricator 是一个开源的源码扫描程序。它还包括了基于 Web 的轻量级代码审查、规划、测试、bug 发现等功能。


主要特性:


  • 提交前(Pre-Commit)的代码审查

  • 可以跟踪大量的 bug

  • 可以帮助我们为每个部门构建独立的任务表单

  • 可定制任务管理

  • 允许我们编写有用的注释和备注信息


下载链接:


https://www.phacility.com/

6. Crucible

Crucible 是一个基于 Web 的代码质量工具。开发人员利用它来进行代码审查、bug 及缺陷发现、变更讨论和知识共享。该工具可以帮助他们捕获主要缺陷并改进他们的代码架构。


主要特性:


  • 通过内联注释、线程引用和对话来协作开发正确的代码

  • 允许使用活动流(活动流可以显示最新的注释)实时跟踪项目和审查更新

  • 当代码在整个审查过程中被重构和修改时,可以确保我们正在审查的所有文件都是最新的

  • 可以根据审查活动自动更新 Jira 软件问题,并且通过单击即可将审查意见转换为问题


下载链接:


https://www.atlassian.com/software/crucible

7. Review Board

Review Board 是一个安全的代码审查工具。它可用于开源项目和公司的代码审查和文档审查。


主要特性:


  • Review Board 可以与 ClearCase、Performce、CVS、Plastic 等集成

  • 该代码是语法高亮显示的,这使得它更具可读性

  • 支持提交前(pre-commit)审查和提交后(post-commit)审查


下载链接:


https://www.reviewboard.org/

8. Barkeep

Barkeep 是一个友好的代码审查系统工具。它提供了一种最简单的方法来审查代码。它允许我们查看任何 Git 库的提交、查看差异点并编写注释。


主要特性:


  • 该工具允许我们发送电子邮件给相关的提交者

  • 支持提交后(post-commit)的工作流

  • 提供了干净的用户界面,易于浏览


下载链接:


http://getbarkeep.org/

9. Reviewable

Reviewable 是一个轻量级的、功能强大的代码分析工具,它使代码审查更快、更全面。它通过用户界面清理、bug 发现以及语法高亮显示来帮助我们提高代码质量。


主要特性:


  • 完全可定制的逻辑可以帮助我们确定何时能完成审查

  • 仅适用于 GitHub 和 GitHub Enterprise,可与它们进行无缝集成,最小化管理工作

  • 行注释可以跨文件版本进行映射,并会一直保留到问题解决为止

  • 可以帮助我们完整地跟踪审查人(每个文件的每个修改版本都是谁审查的),以确保没有遗漏任何变更。


下载链接:


https://reviewable.io/

10. Peer Review Plugin

Peer Review Plugin 消除了耗时的代码审查会议的需求,因为它使我们可以在基于 Web 的用户友好的环境中审查代码。


主要特性:


  • 改善的知识转移体验

  • 可以帮助我们审查存储库中的文件并对其进行注释

  • 以 MS Word docx 格式导出数据

  • 更好的代码以及更少的缺陷

  • 支持 Git、SVN 和 GitHub


下载链接:


https://trac-hacks.org/wiki/PeerReviewPlugin

11. Codacy

Codacy 工具通过静态代码分析自动识别问题。在每个拉取(pull)和提交(commit)请求中,它能快速地告诉用户有关安全性问题、代码重复和代码复杂度的信息。


主要特性:


  • 可以帮助我们在流程中及早发现新问题,并防止线上受到影响

  • 代码质量可视化

  • 可以无缝地集成到我们的工作流中

  • 自我托管的解决方案,在服务器上提供了一流的安全性


下载链接:


https://www.codacy.com/

12. CodeFactor.io

使用 Code Factor 工具,我们可以了解整个项目的代码质量、最近提交的内容以及问题最多的文件。我们可以针对每次提交(commit)和拉取(pull)的请求进行跟踪及问题修复。


主要特性:


  • 可以概述我们的代码库

  • 可以与我们的开发过程无缝集成

  • 我们可以控制要分析的内容

  • 帮助我们捕获每一行代码

  • 简化代码审查流程并改进可操作的报告

  • 它提供了分析数据,可以帮助我们理解、贡献并与同行交流


下载链接:


https://www.codefactor.io/

13. Helix Swarm

Helix swarm 是一个代码审查工具,它可以安排审查、共享内容并查看代码审查变更。它支持持续集成部署。它可以帮助我们监控进度、自动化设计过程并提高项目的发布质量。


主要特性:


  • 允许我们按照优先级进行筛选

  • 可以在个人资料页自定义通知设置

  • 可以通过将多个变更分支附加到提交前(pre-commit)审查中来同时审查独立的组件

  • 通过将 Helix Core 与 Ping Identity、Okta 或其他工具集成来帮助我们确保代码是安全的


下载链接:


https://www.perforce.com/products/helix-swarm

14. Rhodecode

Rhodecode 是一个开源的、安全的企业级源码管理工具。该工具可作为 Git、Subversion 和 Mercurial 的集成工具。


主要特性:


  • 团队协作可以提高代码质量

  • Rhodode 提供了工作流自动化,可以加快协作

  • 权限管理使软件开发更安全

  • 可以帮助我们将现有代码库与新的问题跟踪工具集成在一起


下载链接:


https://rhodecode.com/

15. Veracode

Veracode 是一个代码审查和静态分析工具。它是基于 SaaS 模型构建的。此工具允许我们从安全性的角度分析代码。该工具使用二进制代码 / 字节码,并能保证 100% 的测试覆盖率。


主要特性:


  • 即使源码不可用,也可以通过一致的流程和策略测试桌面、Web 或任何大小的桌面应用程序

  • 不需要手动及自动配置就可以测试多个应用程序

  • 通过在 SDLC 中简化和集成测试来自动化不同的工作流

  • 通过持续审查过程来提高代码的生产效率


下载链接:


https://www.veracode.com/products/binary-static-analysis-sast

16. JArchitect

JArchitect 是一款易于使用的代码审查工具,可用于分析 Java 代码。每次审查后,它都会发送一份项目开发相关的报告。该工具还可以帮助我们提高代码的可维护性。


主要特性:


  • JArchitect 代码规则是 LINQ 查询,可以在第二个查询中生成

  • JArchitect 可以帮助我们发现数百个甚至数千个影响实际代码库的问题

  • 当发现新问题时,它会立即通知开发人员


下载链接:


http://www.jarchitect.com/

英文原文

16 BEST Code Review Tools in 2020 [Static Code Analysis]


2020-01-13 15:0022014
用户头像
小智 让所有人认同的文字称不上表达

发布了 408 篇内容, 共 377.6 次阅读, 收获喜欢 1972 次。

关注

评论 1 条评论

发布
用户头像
没有upsource吗?
2020-01-19 19:46
回复
没有更多了
发现更多内容

Java数据类型转换

共饮一杯无

Java 类型转换 10月月更

vivo互联网机器学习平台的建设与实践

vivo互联网技术

人工智能 机器学习 推荐系统

如何在 SAP BTP 平台上重用另一个已经开发好的 service

Jerry Wang

云原生 SaaS 云平台 SAP 10月月更

搜索中常见数据结构与算法探究(一)

京东科技开发者

数据结构 ES 哈希 数据结构算法 搜索算法

Java 泛型

Yeats_Liao

后端 Java后端 Java core 10月月更

年底前端面试题总结(上)

loveX001

JavaScript

如何用AR Engine环境Mesh能力实现虚实遮挡

HMS Core

AR

web3 chainlink 预言机喂价、VRF

1_bit

智能合约 web3 chanlink

Spring之DI依赖注入

楠羽

笔记 spring】 10月月更

IDEA的Docker插件实战(Docker-compose篇)

程序员欣宸

Docker Docker-compose 10月月更

研发效能领域的“百科全书”重磅来袭!

博文视点Broadview

Qt | Qt的动画框架和类

YOLO.

qt 10月月更 C++

两数之和

掘金安东尼

算法 10月月更

又一里程碑!阿里首推Java面试通关手册,必须人手一份!

Geek_0c76c3

Java 数据库 程序员 架构 面试

Web前端 | HTML5学习

亮点

html web前端 10月月更

AndroidStudio最新版(2021.1.21)编译C++代码生成so文件

中国好公民st

c++ Android; 10月月更

上岸稳了!GitHub标星115k+的阿里内部Java学习教程限时开源

Geek_0c76c3

Java 数据库 程序员 架构 开发

全网首发“Java面试考点大全”,25+专题梳理:JVM+多线程+Spring全家桶+MySQL+Redis等

Geek_0c76c3

Java 数据库 程序员 架构 面试

cstdio的源码学习分析08-设置文件流buffer函数setbuf

桑榆

源码刨析 10月月更 C++

字符串拆分----split()关键字

魏铁锤

10月月更

SeaTunnel连接器V1到V2的架构演进与探究

Apache SeaTunnel

API 数据集成 连接器 Apache SeaTunnel 数据集成平台

数字化转型:营销数字化

Taylor

数字化 营销数字化 客户数据平台 CDP 营销数据中台

Spring JPA 如何进行无参数查询布尔类型

HoneyMoose

LinkedList源码分析(四)

知识浅谈

linkedlist 10月月更

Qt | 深入了解Qt的委托类

YOLO.

qt 10月月更 C++

数据中台与业务中台的区别与联系

阿泽🧸

业务中台 10月月更

践行ESG理念,缘何成为消费金融行业共识?

易观分析

金融 ESG

大数据ELK(二十一):Logstash简介和安装

Lansonli

Logstash 10月月更

谈谈前端性能优化-面试版

loveX001

JavaScript

Python进阶(十)Python 编程规范

No Silver Bullet

Python 编程规范 10月月更

算数、赋值、比较、逻辑、三元运算符

共饮一杯无

Java 运算符 10月月更

16个好用的Code Review工具_文化 & 方法_Guru99_InfoQ精选文章