GitHub vous permet de configurer votre référentiel de telle sorte que les utilisateurs ne puissent pas forcer Push to master , mais existe-t-il un moyen d'empêcher totalement de pousser à maitriser? J'espère pouvoir faire en sorte que la seule façon d'ajouter aux commits to master soit via l'interface utilisateur de requête d'extraction GitHub.
Vous pouvez activer les restrictions de branche et décider qui (en termes d'utilisateurs et d'équipes de l'organisation) est autorisé à Push.
https://help.github.com/articles/about-branch-restrictions/
«Remarque: Si l'option" Inclure les administrateurs "est cochée et que les vérifications d'état requises sur la branche échouent, toute tentative de transfert des modifications dans la branche de base échouera également, quel que soit le statut d'autorisation d'un utilisateur ou d'une équipe.»
Pousser directement vers le maître distant est rejeté lorsque les contrôles d'état sont activés, ce qui signifie que le seul moyen d'ajouter des validations sur le maître distant consiste à fusionner les demandes d'extraction (qui passent les contrôles d'état) sur GitHub.
Voici le résultat de mon expérience pour la branche principale nécessitant des vérifications d'état:
C:\GitRepo\GitHub\TomoyukiAota\photo-location-map [master ↑1]> git Push
Enumerating objects: 5, done.
Counting objects: 100% (5/5), done.
Delta compression using up to 12 threads
Compressing objects: 100% (3/3), done.
Writing objects: 100% (3/3), 305 bytes | 305.00 KiB/s, done.
Total 3 (delta 2), reused 0 (delta 0)
remote: Resolving deltas: 100% (2/2), completed with 2 local objects.
remote: error: GH006: Protected branch update failed for refs/heads/master.
remote: error: 3 of 3 required status checks are expected.
To https://github.com/TomoyukiAota/photo-location-map.git
! [remote rejected] master -> master (protected branch hook declined)
error: failed to Push some refs to 'https://github.com/TomoyukiAota/photo-location-map.git'
C:\GitRepo\GitHub\TomoyukiAota\photo-location-map [master ↑1]>