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