GitHub se connecte soit via l'Coroid Application GitHub soit via un jeton d'accès personnel. Configurez-le à Paramètres → Connexions → Contrôle de source.
Application ou jeton
Privilégiez l'application. Elle accorde l'accès par dépôt plutôt que par utilisateur, continue de fonctionner même lorsque la personne ayant effectué la configuration quitte l'entreprise, et reçoit les événements webhook sans avoir besoin de sondages.
Utilisez un jeton lorsque l'installation de l'application nécessite une approbation d'administrateur d'organisation que vous ne pouvez pas obtenir.
| Application GitHub | Jeton d'accès personnel | |
|---|---|---|
| Portée d'accès | Par dépôt | Tout ce que l'utilisateur peut voir |
| Continue de fonctionner après le départ de l'installateur | Oui | Non |
| Événements webhook | Oui | Sondage |
| Attribution | L'application | Le propriétaire du jeton |
Installation de l'application
Sélectionnez GitHub à Paramètres → Connexions → Contrôle de source et suivez le processus d'installation. GitHub vous demandera quels dépôts accorder ; vous pourrez modifier cela ultérieurement depuis les paramètres propres à GitHub.
Si un dépôt n'apparaît pas lors de la création d'un projet, il est très probable que l'application n'ait pas été autorisée sur ce dépôt spécifique — c'est de loin la cause la plus fréquente.
Utilisation d'un jeton
Créez un jeton classique avec la portée repo , ou un jeton granulé avec des droits de lecture et d'écriture sur les contenus et les demandes de fusion, puis collez-le dans les paramètres du contrôle de code source.
Les jetons sont chiffrés au repos, jamais renvoyés par API, et jamais inclus dans les exports de paramètres.
Problèmes GitHub
La même connexion permet d'importer des problèmes en tant que tâches. Consultez Importation de tâches.
Événements qui deviennent des tâches
Avec l'application, une automatisation d'événements peut envoyer un pull request, un nouveau problème ou un commentaire mentionnant Coroid vers Qualification. Consultez Déclencheurs et destinations.
Le travail qualifié issu de ces événements ne démarre pas automatiquement sauf si son auteur dispose de droits d'écriture, de maintenance ou d'administration sur le dépôt. Coroid interroge GitHub pour chaque événement. Pour un pull request, l'auteur est la personne qui l'a ouvert, et non celle qui l'a étiqueté ou fusionné. Le travail provenant de toute autre personne est créé et attend qu'une personne le démarre. Un commentaire mentionnant Coroid ne compte que si son auteur a des droits d'écriture.
Révision des demandes de fusion
Avec l'application, Coroid vérifie et révise les demandes de fusion ouvertes par des personnes et d'autres outils, et non seulement celles créées par Coroid. Le Contrôle qualité Coroid exécute les vérifications du projet et publie la vérification Contrôle qualité Coroid. La Révision Coroid publie une révision avec des commentaires sur les lignes qu'elle remet en question, ainsi qu'une vérification nommée Révision Coroid. Ces deux éléments sont configurés dans Contrôle qualité, sous Demande de fusion. Consultez Demandes de fusion.
Ce que fait Coroid dans votre dépôt
- lit le code pour le comprendre et le modifier
- crée une branche par tâche
- pousse cette branche et ouvre une demande de fusion pull request vers votre branche principale
Il ne commet jamais sur votre branche par défaut ni ne la fusionne automatiquement. Une fusion n'a lieu que lorsqu'une personne fusionne la pull request dans GitHub ou clique sur Approuver et fusionner dans Coroid.
Un projet configuré sur Local uniquement effectue uniquement la première étape : Coroid lit et extrait les données, et conserve les branches, les révisions et les vérifications au sein de Coroid. Il ne pousse pas, n'ouvre pas de demandes de fusion, n'ajoute pas de commentaires ni ne publie de résultats de vérification, même si l'application ou le jeton le permettent. Consultez Synchronisé ou local uniquement.
Vos règles de protection de branche, de vérifications obligatoires et de révision s'appliquent sans modification. Approuver et fusionner fusionne également via pull request, donc les mêmes règles déterminent si l'opération réussit. Consultez Fusion.