在我们的构建系统中(源代码在 git
版本控制下),我想获取每个静态代码分析器(pylint
,在本例中)消息 build 。我希望它们是增量的:在新的构建报告中,只显示新提交引入的消息。
我可以轻松获得“旧”和"new"提交。然后,一般路径是在"new"提交上运行分析器,然后,对于带有消息的每个源代码行,查找该行是否是新的/修改的,或者它是否与“旧”提交保持一致。然后,仅打印来自新的/修改的行的消息。
pylint
是否有更简单的方法来实现这一目标?或者是否有类似的现有实现?
最佳答案
您可以获得在提交之间更改的文件列表,然后将其传递给 pylint。使用 github pullrequest 工作流程,它看起来像这样:
git --no-pager diff --name-only FETCH_HEAD $(git merge-base FETCH_HEAD master) | grep .py | xargs pylint
关于git - 仅从 'git diff' 获取静态代码分析器消息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27486658/