Skip to main content

Résolution des problèmes de règles

Découvrez comment résoudre les problèmes d’ensembles de règles lorsque vous contribuez à un dépôt.

Qui peut utiliser cette fonctionnalité ?

Les ensembles de règles sont disponibles dans les dépôts publics avec GitHub Free et GitHub Free pour les organisations, et dans les dépôts publics et privés avec GitHub Pro, GitHub Team et GitHub Enterprise Cloud. Pour plus d’informations, consultez « Plans de GitHub ».

Les ensembles de règles de poussée sont disponibles pour le plan GitHub Team dans les référentiels internes et privés, et les fourches de référentiels dont les ensembles de règles de poussée sont activés.

Dépannage des ensembles de règles

Si vous ne pouvez pas effectuer d’action dans un dépôt et que vous souhaitez savoir pourquoi, vous pouvez afficher les ensembles de règles actifs ciblant la branche ou l’étiquette avec laquelle vous travaillez. Pour plus d’informations, consultez « Gestion des ensembles de règles d’un dépôt ».

Selon les règles qui sont actives, vous devrez peut-être modifier votre historique de commit localement avant de pouvoir pousser vos commits vers la branche distante. Par exemple, si une branche nécessite que les commits soient signés, vous pouvez mettre à jour vos paramètres de signature, puis utiliser un rebasage interactif sur votre branche locale pour réécrire votre historique Git avec des commits signés. Pour plus d’informations, consultez « Règles disponibles pour les ensembles de règles » et « Utilisation du rebasage Git en ligne de commande ».

Si une branche ou une étiquette est ciblée par des règles limitant les métadonnées des commits, vos commits peuvent être rejetés si une partie des métadonnées des commits ne correspond pas à un certain modèle. Par exemple, vous devrez peut-être ajouter un numéro de problème au début de votre message de commit, ou changer le nom d’une nouvelle branche ou d’une nouvelle étiquette que vous essayez de pousser vers le dépôt. Si vos commits sont rejetés, vous voyez un message vous indiquant que le modèle auquel les métadonnées pertinentes doivent correspondre. Comme avec les commits signés, vous devrez peut-être effectuer un rebasage pour effectuer un squash des commits ou réécrire chaque commit individuellement. Pour plus d’informations, consultez « Règles disponibles pour les ensembles de règles ».