Для защиты основной ветки проекта на GitHub от нежелательных изменений можно использовать правила защиты веток (Branch Protection Rules). 15
Чтобы настроить правила, нужно: 1
- Перейти на вкладку «Настройки» и найти раздел «Код и автоматизация» на левой боковой панели. 1
- Нажать на «Ветви». 1
- В разделе «Правила защиты веток» нажать на «Добавить правило». 1 Откроется форма, в которой можно настроить правила для конкретной ветки. 1
- Определить правило защиты ветки. 1 В поле «Шаблон имени ветки» указать, к какой ветке будут применяться правила. 1 Например, для защиты основной ветки можно использовать «main». 1
- Настроить опции защиты ветки. 1 Некоторые из них:
- «Требовать запрос на слияние перед объединением». 1 Этот параметр гарантирует, что все изменения должны пройти через запрос на слияние. 1
- «Требовать одобрения». 1 Можно настроить, что запросы на слияние должны быть одобрены определённым количеством рецензентов. 1
- «Требовать проверки статуса перед объединением». 1 Этот параметр гарантирует, что перед объединением запроса на слияние должны пройти определённые автоматические проверки. 1
- «Требовать подписанные коммиты». 1 Если важна безопасность, этот параметр гарантирует, что каждый коммит проверен ключом GPG участника. 1
- «Требовать линейную историю». 1 Этот параметр предотвращает слияние коммитов, обеспечивая более чистую историю коммитов, где каждое изменение воспроизводится последовательно в ветке. 1
- «Не допускать принудительных пушей». 1 Этот параметр не позволяет участникам принудительно вносить изменения в защищённую ветку, что может привести к потере важных данных. 1
- «Не допускать удаления». 1 Этот параметр гарантирует, что ветку нельзя случайно удалить. 1
- «Требовать разрешения обсуждений перед объединением». 1 GitHub позволяет настроить, что все комментарии и запрошенные изменения в запросе на слияние должны быть решены перед его объединением. 1
- Сохранить правило защиты ветки. 1 После настройки параметров нужно нажать на кнопку «Создать» в нижней части формы, чтобы сохранить правило защиты ветки. 1
GitHub автоматически применяет эти правила при каждом запросе на слияние и попытке объединения. 1