Включение анализа кода с TFS 2008 с минимальным воздействием

У нас есть веб-приложение.NET с 172 проектами на TFS 2008, которое охватывает все 3 уровня приложения и использует Team Build for CI. Мы используем VS2010 для разработки.

Мы хотели бы активировать анализ кода для всех проектов с минимальным рекомендуемым набором правил и обеспечить соблюдение политики регистрации в TFS, чтобы анализ кода выполнялся один раз перед регистрацией. Но мы хотели бы оказать минимальное влияние на наших разработчиков в отношении их регулярная проверка разработки в процессе. Каждый раз, когда мы включаем анализ кода в свойствах проекта, обычное время сборки этого проекта увеличивается на 100%. Мы провели анализ проблем анализа кода, и, хотя их много, даже для этого набора правил, он может быть распределен среди всех разработчиков, которые могут их исправить, делая свои существующие улучшения.

Итак, в основном у нас есть два типа сборок, которые мы делаем:

  1. Обычные сборки проверяют правильность кода, что происходит несколько раз, прежде чем мы проверяем код.
  2. Финальная сборка перед регистрацией, где мы также хотели бы проверить анализ кода.

Поэтому мы создали другую конфигурацию решения под названием "DebugWithCA", в которой в его проектах был разрешен анализ кода, поэтому перед тем, как разработчик проверяет код, он переключает конфигурацию с Debug на DebugWithCA, строит и исправляет проблемы анализа кода, а затем регистрирует. Таким образом, для обычных сборок разработчик остается в конфигурации решения отладки и не должен нести дополнительное время сборки, вызванное анализом кода.

Но это также кажется непомерной нагрузкой, поскольку у нас много проверок в течение дня (многие разработчики), и переключение конфигурации решения каждый раз, когда вы регистрируетесь и переключаете его обратно, становится проблемой.

Есть ли более простой способ выполнить наше требование? При сборке, есть ли комбинация клавиш, которую мы можем назначить, чтобы она строилась с помощью Code Analysis или собиралась с определенной конфигурацией решения в VS2010?

1 ответ

Решение

Я могу думать о двух прагматических подходах, чтобы обойти вашу проблему. Оба предложения выводят анализ кода из критического пути / времени разработки.

  1. Активируйте свою конфигурацию DebugWithCA в Gated Check-in. Разработчик просто регистрирует код, а система сборки обеспечивает выполнение анализа кода и внесение изменений только в том случае, если не нарушены основные правила.
  2. Еще более расслабленным; просто выполните Rolling Builds на основе конфигурации DebugWithCA. Разработчики могут забрать нарушения правил в автономном режиме. Менее предпочтительный вариант, но также менее навязчивый.
Другие вопросы по тегам