Skip to main content
Мы публикуем частые обновления нашей документации, и перевод этой страницы может все еще выполняться. Актуальные сведения см. в документации на английском языке.

Сведения о непрерывной интеграции

Вы можете создавать пользовательские рабочие процессы непрерывной интеграции (CI) непосредственно в репозитории GitHub с помощью GitHub Actions.

Сведения о непрерывной интеграции

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

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

Для создания и тестирования кода требуется сервер. Можно создавать и тестировать обновления локально перед отправкой кода в репозиторий или использовать CI-сервер, который проверяет наличие новых фиксаций кода в репозитории.

Сведения о непрерывной интеграции с использованием GitHub Actions

CI с использованием GitHub Actions предлагает рабочие процессы, которые могут создавать код в репозитории и выполнять тесты. Рабочие процессы могут выполняться на виртуальных машинах, размещенных на GitHub, или на машинах, которые вы самостоятельно разместили. Дополнительные сведения см. в разделах Сведения о средствах выполнения тестов, размещенных в GitHub средств выполнения и Сведения о локальных средствах выполнения.

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

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

Когда вы настраиваете CI в своем репозитории, GitHub анализирует код в вашем репозитории и рекомендует рабочие процессы CI на основе языка и фреймворка в нем. Например, если вы используете Node.js, GitHub предложит начальный рабочий процесс, который устанавливает ваши пакеты Node.js и запускает тесты. Можно использовать начальный рабочий процесс CI, предложенный GitHub, настроить предложенный начальный рабочий процесс или создать собственный файл рабочего процесса для запуска тестов CI.

Снимок экрана: рекомендуемые начальные рабочие процессы непрерывной интеграции

Помимо помощи в настройке рабочих процессов CI для вашего проекта, можно использовать GitHub Actions для создания рабочих процессов на протяжении всего жизненного цикла разработки программного обеспечения. Например, вы можете использовать действия для развертывания, упаковки или выпуска проекта. Дополнительную информацию см. в разделе Сведения о GitHub Actions.

Определение общих терминов см. в разделе Основные понятия для GitHub Actions.

Начальные рабочие процессы

GitHub предлагает начальный рабочий процесс CI для различных языков и платформ.

Просмотрите полный список начальных рабочих процессов CI, предлагаемых GitHub в репозитории actions/starter-workflows .

Дополнительные материалы