8

有人知道如何在 Pylint 报告中区分新错误(在最近一次执行 Pylint 期间发现的错误)和旧错误(在以前执行期间发现的错误)吗?

我在我的一个项目中使用 Pylint,这个项目非常大。Pylint 报告了很多错误(即使我在 rcfile 中禁用了很多错误)。虽然我会随着时间的推移修复这些错误,但不要引入新错误也很重要。但是 Pylint HTML 和“可解析”报告并没有将新错误与之前识别的错误区分开来,即使我使用persistent=yes选项运行 Pylint。

至于现在 - 我手动比较新旧报告。不过,如果 Pylint 能够以某种方式突出显示在最近一次运行中发现但在上一次运行中没有发现的错误消息,那将是非常好的。是否可以使用 Pylint 或现有工具或其他工具来做到这一点?因为如果不是 - 看来我最终会编写自己的比较和报告生成。

4

2 回答 2

4

两种基本方法。修复出现的错误,以免出现旧错误。或者,如果您不打算修复某些类型的 lint 错误,请告诉 lint 停止报告它们。

如果您有很多文件,最好分别获取每个文件的 lint 报告,将 lint 报告提交到 svn 等修订控制,然后使用修订控制系统 diff 实用程序将新的 lint 错误与旧的 pre 分开-现有的。为每个 .py 文件单独报告的原因是为了更容易阅读差异输出。

如果您在 Linux 上,vim -d oldfile newfile这是阅读 diff 的好方法。如果您使用的是 Windows,那么只需使用 Tortoise SVN 中内置的差异功能。

于 2011-07-24T07:34:19.007 回答
0
  • 在 dev 分支上运行 pylint,得到 x 个错误
  • 在 master 分支上运行 pylint,得到 y 错误
  • 如果 y > x,这意味着你有新的错误
  • 在代码合并到主控之前,您可以在 CI 过程中执行上述操作
于 2020-10-29T08:13:56.127 回答