Примечание.
GitHub Enterprise Serverразмещенные в данный момент средства выполнения не поддерживаются в GitHub.
Сведения о непрерывной интеграции
Непрерывная интеграция (CI) — это программная практика, которая требует частой фиксации кода в общем репозитории. Более частая фиксация кода позволяет быстрее обнаруживать ошибки и сокращает объем кода, который разработчику необходимо отлаживать при поиске источника ошибки. Частые обновления кода также упрощают слияние изменений, полученные от разных участников группы разработчиков программного обеспечения. Это отлично подходит для разработчиков, которые могут тратить больше времени на написание кода и меньше на отладку ошибок или разрешение конфликтов слияния.
При фиксации кода в репозитории можно непрерывно создавать и тестировать его, чтобы убедиться, что фиксация не приводит к ошибкам. Тесты могут включать анализаторы кода (которые проверяют форматирование стилей), проверки безопасности, объем протестированного кода, функциональные тесты и другие пользовательские проверки.
Для создания и тестирования кода требуется сервер. Можно создавать и тестировать обновления локально перед отправкой кода в репозиторий или использовать CI-сервер, который проверяет наличие новых фиксаций кода в репозитории.
Сведения о непрерывной интеграции с помощью GitHub Actions
CI использует GitHub Actions рабочие процессы, которые могут создавать код в репозитории и выполнять тесты. Рабочие процессы могут выполняться на GitHubразмещенных виртуальных машинах или на компьютерах, размещенных самостоятельно. Дополнительные сведения см. в разделе [AUTOTITLE и Средства выполнения тестов, размещенные в GitHub](/actions/concepts/runners/self-hosted-runners).
Рабочий процесс CI можно настроить для запуска при GitHub возникновении события (например, при отправке нового кода в репозиторий), по заданному расписанию или при возникновении внешнего события с помощью веб-перехватчика репозитория.
GitHub запускает тесты CI и предоставляет результаты каждого теста в запросе на вытягивание, чтобы увидеть, возникает ли изменение в ветви. Когда все тесты CI в рабочем процессе пройдены, внесенные вами изменения готовы к рассмотрению членом команды или слиянию. Если тест не пройден, причиной сбоя могло быть одно из ваших изменений.
При настройке CI в репозитории GitHub анализирует код в репозитории и рекомендует рабочие процессы CI на основе языка и платформы в репозитории. Например, если вы используете Node.js, GitHub предложит шаблон рабочего процесса, который устанавливает пакеты Node.js и запускает тесты. Вы можете использовать шаблон рабочего процесса CI, предлагаемый GitHub, настроить предлагаемый шаблон рабочего процесса или создать собственный пользовательский файл рабочего процесса для выполнения тестов CI.
Помимо настройки рабочих процессов CI для проекта, можно использовать GitHub Actions для создания рабочих процессов в полном жизненном цикле разработки программного обеспечения. Например, вы можете использовать действия для развертывания, упаковки или выпуска проекта. Дополнительные сведения см. в разделе Написание рабочих процессов.
Определение общих терминов см. в разделе Понимание GitHub Actions.
Следующие шаги
GitHub предлагает шаблоны рабочих процессов CI для различных языков и платформ. Руководства по настройке непрерывной интеграции с этими шаблонами см. в разделе Создание и тестирование кода.