Passer au contenu principal

Pourquoi intégrer Devin à GitHub ?

Intégrer Devin à votre organisation GitHub permet à Devin de créer des pull requests, de répondre aux commentaires sur les PR et de collaborer directement au sein de vos dépôts. Devin peut ainsi devenir un véritable collaborateur au sein de votre équipe d’ingénieurs. Pour commencer, rendez-vous sur app.devin.ai > Settings > Integrations > GitHub, cliquez sur Add Connection et suivez les instructions. Vous choisirez à quels dépôts Devin peut accéder et passerez en revue les autorisations requises.
Vous utilisez GitHub Enterprise Server ? Consultez le guide d’intégration GitHub Enterprise Server pour obtenir des instructions de configuration à l’aide de jetons d’accès personnels.

Configuration de l’intégration

Vous devez être administrateur de votre organisation GitHub pour créer et gérer l’intégration Devin. Vous rencontrez des difficultés ? Consultez notre page Problèmes courants.
  1. Dans votre compte Devin sur app.devin.ai, accédez à Settings > Integrations > GitHub et cliquez sur Add Connection.
Devin
  1. Si vous n’êtes pas déjà connecté à GitHub, vous serez invité à vous authentifier.
Devin
  1. Sélectionnez l’organisation GitHub que vous souhaitez connecter à Devin.
Devin
  1. Choisissez d’accorder à Devin l’accès à All repositories ou Select repositories afin de contrôler à quels dépôts Devin peut accéder.
Devin
  1. Une fois l’autorisation GitHub terminée, vous serez redirigé vers les paramètres de Devin, où vous pourrez confirmer que l’intégration est active.
Devin
Nous vous recommandons d’activer des règles de protection sur votre branche principale afin de garantir que toutes les vérifications requises sont effectuées avant que Devin ne puisse fusionner des modifications.

Utiliser Devin avec l’intégration GitHub

Pour les utilisateurs Core et Teams

Une fois l’intégration configurée, vous pouvez @mentionner des dépôts directement dans vos messages au sein de l’application web Devin.

Pour les utilisateurs Enterprise

Une fois l’intégration configurée, vous pouvez déléguer des dépôts à des organisations spécifiques depuis Enterprise Settings > Repository Permissions.
Devin
Si vous travaillez avec un dépôt pour la première fois, nous vous recommandons de suivre la configuration de l’environnement de développement dans le parcours d’onboarding afin de garantir que Devin dispose d’informations exactes et à jour sur votre base de code. Devin répond automatiquement aux commentaires de PR tant que la session n’a pas été archivée.

Gestion des autorisations de Devin dans GitHub

Lors de la configuration, vous pouvez accorder à Devin l’accès à tous les dépôts de votre organisation ou restreindre l’accès à certains dépôts spécifiques. Vous pouvez ajuster l’accès aux dépôts à tout moment via les paramètres de GitHub :
  1. Pour votre organisation GitHub, accédez à Settings > GitHub Apps (par exemple, https://github.com/organizations/<org_name>/settings/installations)
  2. Sélectionnez Configure pour l’intégration Devin.ai
  3. Sous Repository access, choisissez d’accorder l’accès à tous les dépôts ou uniquement à certains dépôts
  4. Cliquez sur Save pour appliquer vos modifications
Devin
Devin a besoin des autorisations suivantes : Accès en lecture à :
AutorisationDescription
dependabot alertsPermet à Devin de résoudre les alertes Dependabot en votre nom (c.-à-d. mettre à jour les versions de dépendances)
actionsPermet à Devin de consulter les actions configurées pour un dépôt afin de comprendre si les changements de Devin passent la CI
checksPermet à Devin de consulter les checks configurés pour un dépôt afin de comprendre si les changements de Devin passent la CI
commit statusesPermet à Devin de voir si un commit passe la CI
deploymentsPermet à Devin de voir quelles versions d’un dépôt ont été déployées
metadataPermet à Devin de consulter les métadonnées cruciales d’un dépôt, par exemple qui en est propriétaire
packagesPermet à Devin de voir quelles versions d’un dépôt ont été publiées sous forme de package
pagesPermet à Devin de consulter les pages associées à un dépôt, par exemple pour voir la documentation
repository advisoriesPermet à Devin de consulter les avis de sécurité liés à un dépôt afin d’aider à corriger les problèmes de sécurité
repository hooksPermet à Devin de consulter les hooks configurés pour un dépôt, par exemple pour le linting et la vérification de types
repository projectsPermet à Devin de consulter les projets associés à un dépôt, par exemple pour récupérer des informations sur une tâche
Accès en lecture et en écriture à :
AutorisationDescription
codePermet à Devin de contribuer à la base de code
discussionsPermet à Devin de contribuer aux discussions
issuesPermet à Devin d’ouvrir de nouveaux tickets/issues
pull requestsPermet à Devin de créer de nouvelles PR
workflowsPermet à Devin de configurer de nouveaux workflows, par exemple pour aider à configurer la CI/CD
Ces autorisations permettent à Devin de travailler dans vos dépôts comme un contributeur classique — en poussant de nouvelles branches, en ouvrant des pull requests et en participant aux discussions de PR.

Modèles de pull request

Lorsque Devin crée une pull request, il utilise un modèle provenant de votre dépôt pour structurer la description de la pull request. Si vous fournissez un modèle, Devin en suit le format lorsqu’il soumet des PR sur GitHub. Vous pouvez fournir à Devin son propre modèle sans modifier votre modèle par défaut destiné aux humains en ajoutant un fichier nommé devin_pr_template.md dans l’un des emplacements PULL_REQUEST_TEMPLATE pris en charge ci-dessous. C’est utile si vous souhaitez que Devin ajoute un contexte supplémentaire, comme une checklist de relecture ou un diagramme Mermaid des fichiers modifiés.

Ordre de recherche des modèles

Devin recherche les modèles dans l’ordre suivant et utilise le premier trouvé :
  1. PULL_REQUEST_TEMPLATE/devin_pr_template.md
  2. docs/PULL_REQUEST_TEMPLATE/devin_pr_template.md
  3. .github/PULL_REQUEST_TEMPLATE/devin_pr_template.md
  4. pull_request_template.md
  5. docs/pull_request_template.md
  6. .github/pull_request_template.md
Si aucun modèle n’est trouvé, Devin utilise son format par défaut pour la description de PR.
Si vous voulez que Devin utilise votre pull_request_template.md existant, copiez-le ou créez un lien symbolique vers l’un des chemins devin_pr_template.md listés ci-dessus.
Pour plus d’informations sur les modèles de pull request GitHub (emplacements pris en charge, modèles multiples, paramètres de requête, etc.), consultez la documentation GitHub : Creating a pull request template for your repository.

Signature des commits

Pendant la configuration de votre dépôt, vous pouvez utiliser le terminal de Devin pour générer une clé GPG pour signer les commits, en suivant le processus décrit dans la documentation de GitHub. Nous vous recommandons de créer, au sein de votre organisation, un compte GitHub dédié (par exemple devin@company.com) à associer à la clé GPG, afin de faciliter l’identification des commits provenant de Devin.
Devin

Considérations relatives à la sécurité

  • Protection de branche : Nous recommandons d’activer des règles de protection de branche sur votre branche principale afin de garantir que tous les contrôles requis ont été validés avant que Devin ne puisse fusionner les modifications.
  • Autorisations au niveau de l’organisation : Devin utilise les autorisations accordées au niveau de l’organisation, et non les autorisations de l’utilisateur qui exécute la session.
  • Accès homogène : Tous les utilisateurs ayant accès aux organisations GitHub et Devin partagent les mêmes autorisations d’intégration Devin.
  • Création de dépôts : Devin ne peut pas créer de nouveaux dépôts dans votre compte GitHub.

Autorisation d’adresses IP

Si votre organisation exige une autorisation d’adresses IP pour l’accès à GitHub, ajoutez les adresses IP suivantes :
  • 100.20.50.251
  • 44.238.19.62
  • 52.10.84.81
  • 52.183.72.253
  • 20.172.46.235
  • 52.159.232.99
Ces adresses IP peuvent changer lors de futures mises à jour. Nous vous recommandons de consulter régulièrement nos notes de version afin de suivre toute modification.

FAQ sur l’intégration GitHub

Oui, vous pouvez connecter une organisation GitHub ou un compte GitHub personnel à votre organisation Devin. Nous vous recommandons toutefois de connecter le compte qui dispose des autorisations appropriées pour que Devin puisse accéder aux dépôts dont votre équipe a besoin.
Seuls les utilisateurs membres de l’organisation ayant installé l’intégration GitHub peuvent l’utiliser dans leurs sessions Devin. Devin hérite de l’accès à l’intégration GitHub en fonction de l’appartenance de l’utilisateur à cette organisation.
Les clés de chiffrement sont gérées par AWS KMS et sont périodiquement renouvelées.