Сведения о правилах защиты ветвей
Для определенной ветви, всех ветвей или любой ветви, которая соответствует шаблону имени, заданному с помощью синтаксиса fnmatch
, можно создать правило защиты ветви в репозитории. Например, чтобы защитить все ветви, содержащие слово release
, можно создать правило ветви для *release*
.
Вы можете создать правило для всех текущих и будущих ветвей в репозитории, используя синтаксис с подстановочным знаком *
. Because GitHub uses the File::FNM_PATHNAME
flag for the File.fnmatch
syntax, the *
wildcard does not match directory separators (/
). For example, qa/*
will match all branches beginning with qa/
and containing a single slash, but will not match qa/foo/bar
. You can include any number of slashes after qa
with qa/**/*
, which would match, for example, qa/foo/bar/foobar/hello-world
. You can also extend the qa
string with qa**/**/*
to make the rule more inclusive.
For more information about syntax options, see the fnmatch documentation.
Если в репозитории настроено несколько правил защиты ветвей, относящихся к одним и тем же ветвям, наивысший приоритет имеют правила, в которых указано определенное имя ветви. Если определенное имя ветви указано в нескольких правилах защиты ветвей, то наивысший приоритет будет иметь правило, созданное первым.
Правила защиты ветвей, в которых используется специальный символ, например *
, ?
или ]
, применяются в порядке их создания, поэтому более старые правила с этими символами имеют более высокий приоритет.
Чтобы создать исключение из существующего правила защиты ветвей, можно создать новое правило с более высоким приоритетом, например правило для определенного имени ветви.
Дополнительные сведения о каждом из доступных параметров защиты ветви см. в разделе Сведения о защищенных ветвях.
Создание правила защиты ветвей
При создании правила защиты ветвей не обязательно, чтобы указанная ветвь уже существовала в репозитории.
-
На экземпляр GitHub Enterprise Server перейдите на главную страницу репозитория. 1. Под именем репозитория щелкните Параметры. Если вкладка "Параметры" не отображается, выберите раскрывающееся меню и нажмите кнопку Параметры.
-
В разделе "Код и автоматизация" боковой панели щелкните Ветви.
-
Рядом с пунктом "Правила защиты ветвей" щелкните Добавить правило.
-
В разделе "Шаблон имени ветви" введите имя ветви или шаблон, которые требуется защитить.
-
При необходимости включите требуемые запросы на вытягивание.
-
В разделе "Защита соответствующих ветвей" выберите Требовать запрос на вытягивание перед слиянием.
-
При необходимости, чтобы требовать утверждения перед слиянием запроса на вытягивание, выберите Требовать утверждения.
Выберите раскрывающееся меню Требуемое количество утверждений перед слиянием , а затем выберите количество проверок утверждения, которые вы хотите требовать в ветви.
-
При необходимости, чтобы пропустить утверждение запроса на вытягивание при отправке фиксации с изменением кода в ветвь, выберите параметр Пропускать устаревшие утверждения запросов на вытягивание при отправке новых фиксаций.
-
Если необходимо требовать проверку владельцем кода в случае, если запрос на вытягивание влияет на код с назначенным владельцем, выберите параметр Требовать проверку владельцами кода. Дополнительные сведения см. в разделе О владельцах кода.
-
При необходимости, чтобы разрешить определенным субъектам отправлять код в ветвь, не создавая запросы на вытягивание, когда это требуется, выберите Разрешить определенным субъектам пропускать создание запросов на вытягивание. Затем найдите и выберите субъекты, которым необходимо разрешить пропускать создание запроса на вытягивание.
-
Если репозиторий является частью организации, при необходимости выберите параметр Ограничить возможность пропуска проверок запросов на вытягивание. Затем в поле поиска найдите и выберите субъектов, которым разрешено отклонять проверки запросов на вытягивание. Дополнительные сведения см. в разделе Отклонение проверки запроса на вытягивание.
-
-
При необходимости включите обязательные проверки состояния. Дополнительные сведения см. в разделе Сведения о проверках состояния.
- Выберите параметр Требовать прохождения проверок состояния перед слиянием.
- Чтобы запросы на вытягивание обязательно тестировались с использованием последнего кода в защищенной ветви, выберите параметр Требовать актуальности ветвей перед слиянием.
- В поле поиска найдите проверки состояния, выбрав необходимые проверки.
-
При необходимости выберите параметр Требовать устранения разногласий перед слиянием.
-
При необходимости выберите параметр Требовать подписания фиксаций.
-
При необходимости выберите параметр Требовать линейной истории.
-
Если необходимо выбрать среды, в которых изменения должны быть успешно развернуты перед слиянием, выберите параметр Требовать успешного развертывания перед слиянием, а затем выберите среды.
-
При необходимости выберите Применить указанные выше правила к администраторам.
-
При необходимости включить ограничения ветвей.
- Выберите параметр Ограничить пользователей, которые могут выполнять отправку в соответствующие ветви.
- В поле поиска найдите и выберите людей, команды или приложения, которые будут иметь разрешение на отправку защищенная ветвь или создание соответствующей ветви.
-
При необходимости в разделе "Правила, применяемые ко всем, включая администраторов" выберите параметр Разрешить принудительную отправку.
Затем выберите, кто может принудительная отправка в ветвь.
-
Выберите вариант Все, чтобы разрешить всем, у кого есть по крайней мере разрешения на запись в репозиторий, включая администраторов, выполнять принудительную отправку в ветвь.
-
Выберите Указать, кто может выполнять принудительную отправку, чтобы разрешить выполнять принудительную отправку в ветвь только определенным субъектам. Затем найдите и выберите эти субъекты.
Дополнительные сведения о принудительной отправке см. в разделе Сведения о защищенных ветвях.
-
-
При необходимости выберите параметр Разрешить удаление.
-
Нажмите кнопку Создать.
Изменение правила защиты ветвей
-
На экземпляр GitHub Enterprise Server перейдите на главную страницу репозитория. 1. Под именем репозитория щелкните Параметры. Если вкладка "Параметры" не отображается, выберите раскрывающееся меню и нажмите кнопку Параметры.
-
В разделе "Код и автоматизация" боковой панели щелкните Ветви.
-
Справа от правила защиты ветвей, которое нужно изменить, щелкните Изменить.
-
Внесите необходимые изменения в правило защиты ветвей.
-
Нажмите кнопку Сохранить изменения.
Удаление правила защиты ветвей
-
На экземпляр GitHub Enterprise Server перейдите на главную страницу репозитория. 1. Под именем репозитория щелкните Параметры. Если вкладка "Параметры" не отображается, выберите раскрывающееся меню и нажмите кнопку Параметры.
-
В разделе "Код и автоматизация" боковой панели щелкните Ветви.
-
Справа от правила защиты ветвей, которое нужно удалить, щелкните Удалить.