如何对Code Review的评论进行分级
我曾写过一篇关于Code Review的文章《Code Review 最佳实践》,在文章中建议对Code Review的评论进行分级:
建议可以对Review的评论进行分级,不同级别的结果可以打上不同的Tag,比如说:
[blocker]: 在评论前面加上一个[blocker]标记,表示这个代码行的问题必须要修改
[optional]:在评论前面加上一个[optional]标记,表示这个代码行的问题可改可不改
[question]:在评论前面加上一个[question]标记,表示对这个代码行不理解,有问题需要问,被审查者需要针对问题进行回复澄清
类似这样的分级可以帮助被审查者直观了解Review结果,提高Review效率。
当时只是简单的建议分成三个级别:Blocker、Optional和Question,今天看到Netlify的一篇文章《Feedback Ladders: How We Encode Code Reviews at Netlify》,讲到了在Netlify是如何对Code Review的反馈进行阶梯划分的,同时还配有形象的Emoji图标,非常值得学习借鉴。
在这里我简单介绍一下Netlify是如何对Code Review反馈进行分级的。
⛰ 大山,严重问题,必须马上采取行动
如果说你的代码是房子,那么这座山⛰️就长在你的房子里面,房子已经被撑破没有空间了,在做其他事情之前必须立即把山给搬了。
⛰️属于最高级别的反馈,问题可能不仅仅是当前PR(Pull Request,合并请求)导致的,而是发现在master的代码有非常严重的问题,属于非常严重并且必须马上修改的级别。
比如说在Review时发现了正在运行的程序中存在的安全漏洞和导致系统崩溃的严重Bug。