Acerca de las reglas de protección de rama
Puede crear una regla de protección de rama en un repositorio para una rama específica, todas las ramas o cualquier rama que coincida con un patrón de nombre que especifique con la sintaxis fnmatch
. Por ejemplo, para proteger todas las ramas que contengan la palabra release
, puede crear una regla de rama para *release*
.
Puede crear una regla para todas las ramas actuales y futuras de la repositorio con la sintaxis de comodín *
. Como GitHub usa la marca File::FNM_PATHNAME
para la sintaxis File.fnmatch
, el carácter comodín no coincide con los separadores de directorios (/
). Por ejemplo, qa/*
coincidirá con todas las ramas que comienzan por qa/
y que contienen una sola barra diagonal. Puede incluir varias barras diagonales con qa/**/*
y puede ampliar la cadena qa
con qa**/**/*
para que la regla sea más inclusiva. Para más información sobre las opciones de sintaxis para las reglas de rama, vea la documentación de fnmatch.
Si un repositorio tiene varias reglas de rama protegida que afectan las mismas ramas, las reglas que incluyen el nombre de una rama específica tienen la mayor prioridad. Si hay más de una regla de rama protegida que hace referencia al mismo nombre de rama específico, entonces la regla de rama creada primera tendrá la prioridad más alta.
Las reglas de rama protegida que mencionen un carácter especial, como *
, ?
o ]
, se aplican en el orden en el que se hayan creado, por lo que las reglas más antiguas con estos caracteres tienen una prioridad más alta.
Para crear una excepción a una regla de rama existente, puedes crear una nueva regla de protección de rama que sea una prioridad superior, como una regla de rama para un nombre de rama específico.
Para más información sobre cada una de las opciones de protección de rama disponibles, consulta "Acerca de las ramas protegidas".
Crear una regla de protección de rama
Cuando creas una regla de rama, la rama que especifiques no tendrá que en el repositorio aún.
-
En tu instancia de GitHub Enterprise Server, navega a la página principal del repositorio. 1. Debajo del nombre del repositorio, haz clic en Configuración.
-
En la sección de "Code and automation" de la barra lateral, haga clic en Branches.
-
Junto a "Reglas de protección de rama", haga clic enAgregar regla.
-
Debajo del "Patrón del nombre de la rama", teclea el nombre de la rama o el patrón que quieras proteger.
-
Opcionalmente, habilita las solicitudes de cambios requeridas.
- En "Proteger las ramas coincidentes", seleccione Exigir una solicitud de incorporación de cambios antes de la combinación.
- Opcionalmente, para exigir aprobaciones antes de que se pueda combinar una solicitud de incorporación de cambios, seleccione Exigir aprobaciones, haga clic en el menú desplegable Número obligatorio de aprobaciones antes de la combinación y, después, seleccione la cantidad de revisiones de aprobación que le gustaría exigir en la rama.
- Opcionalmente, para descartar una revisión de aprobación de la solicitud de incorporación de cambios cuando una confirmación que modifica el código se inserta en la rama, seleccione Descartar las aprobaciones de solicitud de incorporación de cambios obsoletas cuando se inserten confirmaciones nuevas.
- Opcionalmente, para exigir una revisión de un propietario del código cuando la solicitud de incorporación de cambios afecte a código que tenga un propietario designado, seleccione Exigir la revisión de los propietarios del código. Para obtener más información, vea «Acerca de los propietarios de código».
- Opcionalmente, para permitir que actores concretos inserten código en la rama sin crear solicitudes de incorporación de cambios cuando es obligatorio, selecciona Permitir que actores específicos omitan las solicitudes de incorporación de cambios necesarias. Posteriormente, busca y selecciona los actores a quienes se les debería permitir omitir la creación de una solicitud de incorporación de cambios.
- Opcionalmente, si el repositorio forma parte de una organización, seleccione Restringir quién puede descartar las revisiones de una solicitud de incorporación de cambios. Posteriormente, busca y selecciona los actores a quienes se les permitirá descartar las revisiones de solicitudes de incorporación de cambios. Para obtener más información, vea «Descartar una revisión de solicitud de extracción».
- En "Proteger las ramas coincidentes", seleccione Exigir una solicitud de incorporación de cambios antes de la combinación.
-
Opcionalmente, habilita las verificaciones de estado requeridas. Para obtener más información, vea «Acerca de las verificaciones de estado».
- Seleccione Exigir que se superen comprobaciones de estado antes de la combinación.
- Opcionalmente, para garantizar que las solicitudes de incorporación de cambios se prueban con el código más reciente en la rama protegida, seleccione Exigir que las ramas estén actualizadas antes de la combinación.
- Busca las verificaciones de estado seleccionando aquellas que quieras requerir.
- Seleccione Exigir que se superen comprobaciones de estado antes de la combinación.
-
Opcionalmente, seleccione Exigir la resolución de la conversación antes de la combinación.
-
Opcionalmente, seleccione Exigir confirmaciones con firma.
-
Opcionalmente, seleccione Exigir historial lineal.
-
Opcionalmente, para elegir en qué entornos se deben implementar correctamente los cambios antes de la combinación, seleccione Exigir que las implementaciones se realicen correctamente antes de la combinación y, después, seleccione los entornos.
-
Opcionalmente, selecciona Aplicar las reglas anteriores a los administradores.
-
Opcionalmente, habilitan las restricciones de rama.
- Seleccione Restringir quién puede realizar inserciones en a las ramas coincidentes.
- Busca y selecciona las personas, equipos o aplicaciones que tendrán permiso para subir información a la rama protegida o crear una rama coincidente.
- Seleccione Restringir quién puede realizar inserciones en a las ramas coincidentes.
-
Opcionalmente, en "Reglas que se aplican a todos, incluidos los administradores", seleccione Permitir inserciones forzadas.
Posteriormente, elige quién puede subir información forzadamente a la rama.-
Seleccione Todos para permitir que todos los que tengan al menos permisos de escritura en el repositorio realicen inserciones forzadas en la rama, incluidos los que tengan permisos administrativos.
-
Selecciona Especificar quién puede realizar inserciones forzadas para permitir que solo actores concretos realicen inserciones forzadas en la rama. A continuación, busca y selecciona esos actores.
Para más información sobre las inserciones forzadas, vea "Acerca de las ramas protegidas".
-
-
Opcionalmente, seleccione Permitir eliminaciones.
-
Haga clic en Crear.
Editar una regla de protección de rama
-
En tu instancia de GitHub Enterprise Server, navega a la página principal del repositorio. 1. Debajo del nombre del repositorio, haz clic en Configuración.
-
En la sección de "Code and automation" de la barra lateral, haga clic en Branches.
-
A la derecha de la regla de protección de rama que quiera editar, haga clic en Editar.
-
Haz los cambios que desees en la regla de protección de rama.
-
Haga clic en Guardar cambios.
Borrar una regla de protección de rama
-
En tu instancia de GitHub Enterprise Server, navega a la página principal del repositorio. 1. Debajo del nombre del repositorio, haz clic en Configuración.
-
En la sección de "Code and automation" de la barra lateral, haga clic en Branches.
-
A la derecha de la regla de protección de rama que quiera eliminar, haga clic en Eliminar.