使用git diff / git apply使代码审查变得更加轻松
偶尔出现的困扰
在进行代码审查时,有时候无法理解实施者的意图进行了哪些变更。
比如,当有一个标题只提到“修复测试NG”的信息很少的票券被创建,而在拉取请求(PR)中,只写了像“修复了测试”这样肤浅的内容时(本来应该在票券或拉取请求中补充详细信息..)。
当审查这样的公关时,为了了解修订代码的意图,首先需要在修订前的分支上确认目的(测试失败的情况),然后在修订后的分支上确认功能是否修复(测试是否通过)。
另外,在代码审查阶段,虽然已经知道实施者想要做什么,但有时我们会对某一部分代码的必要性感到疑问,或者想要提出更好的代码建议,但又想要稍微进行一些操作验证,此时我们可能会在 Pull Request 中和代码靠近着一起将相关部分注释掉或修改。
我发现了一种简单的方法来完成这件事,所以想要与大家共享。
命令
git diff A..B | git apply
A : 原本分支(合并目标分支)
B : 更新后分支
能做的事情 zuò de
可以将变更前分支和变更后分支的差异带到工作目录中。
因此,可以方便地验证变更后的代码,并且可以通过git stash轻松地运行变更前的代码。
毋庸置疑地,在不需要深入了解公共关系工作的情况下,通过编辑器(如VSCode、IntelliJ等)可以清楚地查看差异,并在修改代码的同时进行操作验证,这也十分方便。