Инструмент для инкрементного статического анализа кода?

Существуют ли какие-либо бесплатные инструменты, которые позволяют выполнять инкрементный статический анализ кода (для SVN и предпочтительно для Git)? В настоящее время мы используем Sonar (2.12, я думаю?), Но проблема в том, что время, необходимое для анализа всего кода в нашем проекте, составляет 40-60 минут. А нам нужно его умножить, так как у нас есть несколько веток, работающих над разными подпроектами.

Вот почему я ищу инструмент, который мог бы анализировать код только из последнего коммита (который, насколько мне известно, Sonar не поддерживает) или только из кода, который был изменен за последние X часов / дней / чего угодно .

Я нашел подключаемый модуль Cutoff для Sonar, который предположительно делает то, что я хочу (проверяет только код из файла, который был изменен после определенной даты), но:

  1. Мне все еще нужно проверить, работает ли он
  2. проверьте, поддерживает ли он динамическое изменение даты (чтобы он учитывал только код, т.е. последний день, а не то, что мне пришлось бы ежедневно вручную изменять дату исключения).
  3. похоже, что он не очень хорошо поддерживается (последнее изменение в 2010 году, и оно все еще находится в версии 0.1)

Было бы идеально, если бы он проверял только код из последнего коммита, но я этого не видел в любом месте.

Также в качестве побочного вопроса: запускается ли анализ после каждой фиксации (т.е.с помощью плагина hudson sonar) хорошая вещь или ее следует избегать? В моей последней команде у нас был такой эхолот, и мы мгновенно получали электронное письмо, если бы мы «сломали его» (добавили в код серьезное / важное). Это было очень удобно, так как мы знали, кто виноват (на основе информации из коммита). Или лучше анализировать его реже (скажем, раз в неделю)? В этом случае мне нужно будет проверить, сможет ли Sonar сказать, кто совершил проблемный код.

5
задан Mateusz Dymczyk 10 January 2012 в 16:56
поделиться