Итак, подведем итог: сценарий сборки выполняется элементом управления исходным кодом или в определенное время каждый день?
Это зависит. Некоторые команды используют фиксацию в системе управления версиями в качестве триггера, некоторые команды используют временное событие в качестве триггера (например, каждый час). Если вы запускаете сборку после каждого изменения, вы получаете немедленную обратную связь. Если вы дадите некоторое время между двумя сборками, вы задержите эту обратную связь, и в случае сбоя сборки будет сложнее определить изменения, которые являются причиной. Это может потребовать дополнительного расследования.
Просто для уточнения словарного запаса, для меня «сборка» - это на самом деле скрипт / инструмент, который автоматизирует все, что нужно сделать (компиляция, запуск тестов и т. Д.). Затем непрерывный запуск этой автоматической сборки - это то, что люди называют « непрерывная интеграция ». И запуск a сборки на событии (основанном на времени или на фиксации), извлечение источников из репозитория, запуск сценария сборки, уведомление людей в случае сбоя является обязанностью «механизма непрерывной интеграции».
Кроме того, термин «нарушить сборку» - означает ли это, что код помещает управление исходным кодом, и когда сборка выполняется, происходит сбой из-за того, что код не проходит юнит-тест / приложение покрытия кода возвращает отрицательные результаты ниже определенного порога?
Это действительно очень двоично: сборка проходит или нет. В противном случае может быть много причин: код не скомпилирован, тест не пройден, проверка качества не пройдена (стандарты кодирования, покрытие кода и т. Д.). Если вы фиксируете некоторый код, который вызывает сбой сборки (независимо от причины), то вы «сломали сборку».
Наконец, что означает шаг? (Например, один шаг сборки)?
По моему мнению, одношаговая сборка означает, что вы можете собрать все свое приложение, запустить тесты, выполнить проверки качества, создать отчеты, собрать приложение, развернуть его и т. Д. С помощью одной команды . Это синоним автоматической сборки (если вы не можете запустить сборку за один шаг, т. Е. Если требуется вмешательство человека, то она не полностью автоматизирована).