Github объединяется в «Основной» только из ветвей, соответствующих шаблону

#github

Вопрос:

Я создал репозиторий git с защищенными ветвями в GitHub: «main» и «dev -*» требуют объединения PR. Однако все слияния других ветвей должны выполняться с dev -*, а слияния с main должны выполняться только с dev-*.

Я хотел бы установить правило для предотвращения попадания PR в main из ветвей, которые не соответствуют шаблону dev-*. Есть ли какой-нибудь способ сделать это?

Ответ №1:

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

Если вы объедините это с разрешениями ветвей, которые требуют прохождения проверки состояния для слияния (которые находятся в области защищенных ветвей), это предотвратит успешное слияние с нежелательной ветвью.