À propos des règles de protection de branche
Vous pouvez créer une règle de protection de branche dans un référentiel pour une branche spécifique, pour toutes les branches ou pour toute branche qui correspond à un modèle de nom que vous spécifiez avec la syntaxe fnmatch
. Par exemple, pour protéger toutes les branches contenant le mot release
, vous pouvez créer une règle de branche pour *release*
.
Vous pouvez créer une règle pour toutes les branches actuelles et futures dans votre dépôt avec la syntaxe générique *
. Étant donné que GitHub utilise l’indicateur File::FNM_PATHNAME
pour la syntaxe File.fnmatch
, le caractère générique ne correspond pas aux séparateurs de répertoires (/
). Par exemple, qa/*
correspond à toutes les branches commençant par qa/
et contenant une barre oblique unique. Vous pouvez inclure plusieurs barres obliques avec qa/**/*
, et vous pouvez étendre la chaîne qa
avec qa**/**/*
pour rendre la règle plus inclusive. Pour plus d’informations sur les options de syntaxe des règles de branche, consultez la documentation fnmatch.
Si un dépôt a plusieurs règles de branches protégées qui affectent les mêmes branches, les règles qui incluent un nom de branche spécifique ont la priorité la plus élevée. Si plusieurs règles de branche protégée référencent le même nom de branche spécifique, la règle de branche créée en premier aura une priorité plus élevée.
Les règles de branches protégées qui mentionnent un caractère spécial, tel que *
, ?
ou ]
, sont appliquées dans l’ordre dans lequel elles ont été créées ; les règles les plus anciennes avec ces caractères ont donc une priorité plus élevée.
Pour créer une exception à une règle de branche existante, vous pouvez créer une règle de protection de branche de priorité plus élevée, telle qu’une règle de branche pour un nom de branche spécifique.
Pour plus d’informations sur chacun des paramètres de protection de branche disponibles, consultez « À propos des branches protégées ».
Création d’une règle de protection de branche
Lorsque vous créez une règle de branche, la branche que vous spécifiez n’a pas encore besoin d’exister dans le dépôt.
-
Dans votre instance GitHub Enterprise Server, accédez à la page principale du dépôt. 1. Sous le nom de votre dépôt, cliquez sur Paramètres. Si vous ne voyez pas l’onglet « Paramètres », sélectionnez le menu déroulant et cliquez sur Paramètres.
-
Dans le menu à gauche, cliquez sur Branches.
1. À côté de « Règles de protection de branche », cliquez sur Ajouter une règle. -
Sous « Modèle de nom de branche », tapez le nom ou le modèle de branche à protéger.
-
Si vous le souhaitez, activez les demandes de tirage (pull requests) requises.
- Sous « Protéger les branches correspondantes », sélectionnez Exiger une demande de tirage avant de fusionner.
- Si vous le souhaitez, pour exiger des approbations avant qu’une demande de tirage puisse être fusionnée, sélectionnez Exiger des approbations, cliquez sur le menu déroulant Nombre requis d’approbations avant de fusionner, puis sélectionnez le nombre de révisions d’approbation que vous souhaitez exiger sur la branche.
- Si vous le souhaitez, pour ignorer une révision d’approbation de demande de tirage lorsqu’un commit de modification de code est poussé vers la branche, sélectionnez Ignorer les approbations de demandes de tirage obsolètes lorsque de nouveaux commits sont poussés.
- Si vous le souhaitez, pour exiger une révision de la part d’un propriétaire de code lorsque la demande de tirage affecte du code qui a un propriétaire désigné, sélectionnez Exiger une révision de la part des propriétaires de code. Pour plus d’informations, consultez « À propos des propriétaires de code ».
- Si vous le souhaitez, pour autoriser des acteurs spécifiques à pousser du code vers la branche sans créer de demandes de tirage lorsqu’elles sont exigées, sélectionnez Autoriser les acteurs spécifiés à contourner les demandes de tirage requises. Ensuite, recherchez et sélectionnez les acteurs qui doivent être autorisés à ignorer la création d’une demande de tirage.
- Si vous le souhaitez, si le dépôt fait partie d’une organisation, sélectionnez Restreindre qui peut ignorer les révisions de demandes de tirage. Ensuite, recherchez et sélectionnez les acteurs autorisés à ignorer les révisions de demandes de tirage. Pour plus d’informations, consultez « Ignorer la révision d’une demande de tirage ».
- Sous « Protéger les branches correspondantes », sélectionnez Exiger une demande de tirage avant de fusionner.
-
Si vous le souhaitez, activez les vérifications d’état requises. Pour plus d’informations, consultez « À propos des vérifications d’état ».
- Sélectionnez Exiger la réussite des vérifications d’état avant de fusionner.
- Si vous le souhaitez, pour être sûr que les demandes de tirage sont testées avec le code le plus récent de la branche protégée, sélectionnez Exiger que les branches soient à jour avant la fusion.
- Recherchez les vérifications d’état, en sélectionnant celles que vous souhaitez exiger.
- Sélectionnez Exiger la réussite des vérifications d’état avant de fusionner.
-
Si vous le souhaitez, sélectionnez Exiger une résolution de conversation avant de fusionner.
-
Si vous le souhaitez, sélectionnez Exiger des commits signés.
-
Si vous le souhaitez, sélectionnez Exiger un historique linéaire.
-
Si vous le souhaitez, sélectionnez Appliquer les règles ci-dessus aux administrateurs.
-
Si vous le souhaitez, activez les restrictions de branche.
- Sélectionnez Restreindre qui peut effectuer un push vers les branches correspondantes.
- Recherchez et sélectionnez les personnes, équipes ou applications qui auront l’autorisation de pousser vers la branche protégée ou de créer une branche correspondante.
- Sélectionnez Restreindre qui peut effectuer un push vers les branches correspondantes.
-
Si vous le souhaitez, sous « Règles appliquées à tous, y compris les administrateurs », sélectionnez Autoriser les poussées de force.
Choisissez ensuite qui peut forcer la poussée vers la branche.-
Sélectionnez Tout le monde pour autoriser toute personne ayant au moins des autorisations d’écriture dans le dépôt à forcer la poussée vers la branche, y compris celles disposant d’autorisations d’administrateur.
-
Sélectionnez Spécifier qui peut forcer la poussée pour autoriser uniquement des acteurs spécifiques à forcer la poussée vers la branche. Ensuite, recherchez et sélectionnez ces acteurs.
Pour plus d’informations sur les poussées de force, consultez « À propos des branches protégées ».
-
-
Si vous le souhaitez, sélectionnez Autoriser les suppressions.
-
Cliquez sur Créer.
Modification d’une règle de protection de branche
-
Dans votre instance GitHub Enterprise Server, accédez à la page principale du dépôt. 1. Sous le nom de votre dépôt, cliquez sur Paramètres. Si vous ne voyez pas l’onglet « Paramètres », sélectionnez le menu déroulant et cliquez sur Paramètres.
-
Dans le menu à gauche, cliquez sur Branches.
-
À droite de la règle de protection de branche que vous souhaitez modifier, cliquez sur Modifier.
-
Apportez vos modifications souhaitées à la règle de protection de branche.
-
Cliquez sur Save changes.
Suppression d’une règle de protection de branche
-
Dans votre instance GitHub Enterprise Server, accédez à la page principale du dépôt. 1. Sous le nom de votre dépôt, cliquez sur Paramètres. Si vous ne voyez pas l’onglet « Paramètres », sélectionnez le menu déroulant et cliquez sur Paramètres.
-
Dans le menu à gauche, cliquez sur Branches.
-
À droite de la règle de protection de branche que vous souhaitez supprimer, cliquez sur Supprimer.