有没有免费的工具可以进行增量静态代码分析(适用于SVN,最好是Git)?目前我们正在使用Sonar(我认为是2.12版本),但问题在于需要分析我们项目中的所有代码所需的时间为40-60分钟。而且由于我们有几个分支在不同的子项目上工作,因此我们需要将这个时间乘以几倍。
这就是为什么我正在寻找一种工具,它可以仅从最新提交的代码或在过去X小时/天/任何时间内修改的代码中分析代码。
我找到了Sonar的Cutoff插件,据说可以做到我想要的(仅检查在某个日期之后修改的文件中的代码),但是:
1.我仍然需要检查它是否有效 2.检查它是否支持动态日期更改(这样它只会考虑从最近一天的代码,而不必每天手动更改排除日期)。 3.它似乎得不到很好的支持(上次更新是2010年,它仍然是0.1版本)
如果它只检查最后一次提交的代码,那就太完美了,但我还没有在任何地方看到过它。
此外,作为一个附加问题:在每次提交后运行分析(即使用Hudson Sonar插件)是否是一个好主意,还是应该避免使用?在我的上一个团队中,我们就是这样运行Sonar的,如果我们“破坏了它”(添加了重大/关键的代码),我们会立即收到电子邮件。这非常方便,因为我们知道是谁的问题(根据提交信息)。还是应该较少地进行分析(比如每周一次)?在这种情况下,我将不得不检查Sonar是否能够说出是谁提交了有问题的代码。
这就是为什么我正在寻找一种工具,它可以仅从最新提交的代码或在过去X小时/天/任何时间内修改的代码中分析代码。
我找到了Sonar的Cutoff插件,据说可以做到我想要的(仅检查在某个日期之后修改的文件中的代码),但是:
1.我仍然需要检查它是否有效 2.检查它是否支持动态日期更改(这样它只会考虑从最近一天的代码,而不必每天手动更改排除日期)。 3.它似乎得不到很好的支持(上次更新是2010年,它仍然是0.1版本)
如果它只检查最后一次提交的代码,那就太完美了,但我还没有在任何地方看到过它。
此外,作为一个附加问题:在每次提交后运行分析(即使用Hudson Sonar插件)是否是一个好主意,还是应该避免使用?在我的上一个团队中,我们就是这样运行Sonar的,如果我们“破坏了它”(添加了重大/关键的代码),我们会立即收到电子邮件。这非常方便,因为我们知道是谁的问题(根据提交信息)。还是应该较少地进行分析(比如每周一次)?在这种情况下,我将不得不检查Sonar是否能够说出是谁提交了有问题的代码。