Запуск рабочего процесса

Завершено

Никто не должен отправлять изменения непосредственно в основную ветвь в репозитории кода. В идеале, если требуется любая разработка, необходимо внести изменения в копию кода в ветви.

Распространенный подход заключается в работе с ветвями компонентов, где ветвь используется для работы с функцией. Например, команде по обработке и анализу данных может потребоваться повысить производительность модели путем изменения значений гиперпараметров. Команда может создать ветвь и обновить значение гиперпараметра в скрипте обучения. После завершения экспериментов датасаентист может создать pull request, чтобы объединить ветку с основным репозиторием.

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

Чтобы использовать разработку на основе функций вместе с автоматизацией, вам потребуется:

  • Создать правило защиты ветви, чтобы заблокировать прямые отправки в основную ветвь.
  • Создать ветвь для обновления кода.
  • Активировать рабочий процесс GitHub Actions при открытии запроса на вытягивание.

Создание правила защиты ветви

Чтобы защитить код, необходимо заблокировать любые прямые отправки в основную ветвь. Блокировка прямых отправок означает, что никто не сможет напрямую отправлять изменения кода в главную ветвь. Вместо этого можно вносить изменения в главную ветвь, объединяя запросы на вытягивание.

Чтобы защитить основную ветвь, включите правило защиты ветви в GitHub:

  1. Перейдите на вкладку "Параметры " в репозитории.
  2. На вкладке "Параметры" в разделе "Код и автоматизация" выберите "Ветви".
  3. Выберите "Добавить правило".
  4. В разделе main введите .
  5. Включите запрос на вытягивание перед объединением и требованием утверждений.
  6. Сохранение изменений.

Снимок экрана: настройка правила защиты ветви в GitHub.

Создать ветвь для обновления кода.

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

Запуск рабочего процесса GitHub Actions

Наконец, может потребоваться использовать создание запросов на вытягивание в качестве триггера для рабочих процессов GitHub Actions. Например, каждый раз, когда кто-то вносит изменения в код, необходимо выполнить некоторые проверки качества кода.

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

Чтобы активировать рабочий процесс GitHub Actions, можно использовать on: [pull_request]. При использовании этого триггера рабочий процесс будет запускаться при каждом создании запроса на вытягивание.

Если требуется, чтобы рабочий процесс выполнялся каждый раз при объединении запроса на вытягивание, необходимо использовать другой триггер. Объединение запроса на вытягивание по сути является отправкой в главную ветвь. Таким образом, чтобы запустить рабочий процесс при объединении запроса на вытягивание, используйте следующий триггер в рабочем процессе GitHub Actions:

on:
  push:
    branches:
      - main