在我们的构建系统中(使用git版本控制下的源代码),我想pylint为每个构建获取静态代码分析器(在本例中).我希望它们是增量的:在新的构建报告中,只显示新提交引入的消息.
我可以轻松获得"旧"和"新"提交.然后,一般路径是在"新"提交上运行分析器,然后,对于带有消息的每个源代码行,查找该行是新的/修改的,还是来自"旧"提交的完整.然后,仅打印来自新/修改行的消息.
是否有更简单的方法来实现这一目标pylint?或者是否存在类似的现有实现?
小智 0
您可以获取提交之间更改的文件列表,然后将其传递给 pylint。使用 github pullrequest 工作流程,它看起来像这样:
git --no-pager diff --name-only FETCH_HEAD $(git merge-base FETCH_HEAD master) | grep .py | xargs pylint
Run Code Online (Sandbox Code Playgroud)