Подтвердить что ты не робот

Является ли непрерывная интеграция достойной для небольших проектов?

Я стремился к непрерывной интеграции в моей компании, так как я присоединился 5 месяцев назад, но, увидев тип приложений, над которыми мы работаем, я начинаю думать, что, возможно, не стоит прилагать усилий для создания каждый проект для непрерывного интегрирования.

Если вы работаете в отделе разработки, где средний проект занимает 2-3 недели, и как только он развертывается, вам редко приходится когда-либо беспокоиться об этом, это непрерывная интеграция, которая стоит того, чтобы настроить его?

4b9b3361

Ответ 1

Вероятно, зависит от вашего процесса. Если у вас есть модульные тесты, которые охватывают ваш код, то непрерывная интеграция стоит каждого бита. Я предполагаю, что вы, ребята, работаете над одним модулем работы, так как проекты 2-3 недели.

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

Другая причина заключается в том, что ваш проект очень модульный. Я работал в системах, где есть много модулей, и разработчик не будет функциональным тестированием всего веб-сайта до его совершения. Вещи могут даже не скомпилироваться должным образом, поскольку другой модуль даже не будет создан, потому что разработчик не выполнил проверку полного кода.

Я бы порекомендовал постоянную интеграцию. С настройками, такими как Hudson и Cruisecontrol, не требуется много времени для настройки и быстрой оплаты.

Ответ 2

Лично я считаю, что CI и различные процессы, которые он поощряет, всегда полезны. Получение настройки CI довольно тривиально, как только вы настроили сервер. Вы в основном просто копируете файл конфигурации из одного проекта, редактируете его и создаете новый проект. Я бы не стал использовать CI из-за "усилий по настройке каждого проекта".

Ответ 3

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

Что касается программного обеспечения I.C, вы можете установить, настроить и начать использовать Hudson менее чем за 10 минут! Так почему бы вам пойти без какой-либо системы IC?

Ответ 4

Это зависит от того, насколько быстро вы можете настроить автоматическую сборку, а затем подключиться к серверу CI.

.NET

Я видел, как мы перешли от автоматической сборки к автоматизированной сборке для проекта за несколько минут, используя UppercuT. Мы используем это и CruiseControl.NET(в конфигурации мы добавляем строку для каждого проекта b/c, используем препроцессор).

http://code.google.com/p/uppercut/

Несколько хороших объяснений здесь: UppercuT

Ответ 5

Если ваши многочисленные приложения имеют общие компоненты или модули, CI и тесты, вероятно, помогут вам заметить что-то нарушение. Если они на самом деле все отброшены, самонастраивающиеся скрипты, тогда вам может не понадобиться CI, но это непростой вызов.

Ответ 6

Как указывали другие, как только CI настроен, добавление нового проекта тривиально, поэтому я бы сказал, для этого. Одно из преимуществ, которое вы увидите, это то, что, если какой-либо из ваших проектов когда-либо изменится, у вас уже есть CI, и, надеюсь, ваши юнит-тесты готовы идти, поэтому вы не получите никаких неприятных сюрпризов!

Ответ 7

Непрерывная интеграция - это не только обеспечение работоспособности, но и возможность DOCUMENT и TEST процесса выпуска, как это было бы сделано новым разработчиком.

Это гарантирует, что клиент получит то, что было протестировано, а не то, что разработчик просто выбрасывает из своего жесткого диска.

Это может быть чрезвычайно важно для целей обслуживания.