Zum Hauptinhalt springen

Warum Devin mit GitHub integrieren?

Die Integration von Devin mit deiner GitHub-Organisation ermöglicht es Devin, Pull-Requests zu erstellen, auf PR-Kommentare zu antworten und direkt in deinen Repositories zusammenzuarbeiten. So kann Devin als vollwertiges Mitglied deines Engineering-Teams fungieren. Um zu beginnen, gehe zu app.devin.ai > Settings > Integrations > GitHub, klicke auf Add Connection und folge den Anweisungen. Dabei wählst du aus, auf welche Repositories Devin zugreifen kann, und überprüfst die erforderlichen Berechtigungen.
Verwendest du GitHub Enterprise Server? Siehe den GitHub Enterprise Server Integrationsleitfaden für Einrichtungsschritte mithilfe persönlicher Zugriffstokens.

Einrichten der Integration

Sie müssen Administrator Ihrer GitHub-Organisation sein, um die Devin-Integration zu erstellen und zu verwalten. Gibt es Probleme? Sehen Sie sich unsere Seite zu häufigen Problemen an.
  1. Melden Sie sich in Ihrem Devin-Konto unter app.devin.ai an, navigieren Sie zu Settings > Integrations > GitHub und klicken Sie auf Add Connection.
Devin
  1. Wenn Sie noch nicht bei GitHub angemeldet sind, werden Sie zur Authentifizierung aufgefordert.
Devin
  1. Wählen Sie die GitHub-Organisation aus, die Sie mit Devin verbinden möchten.
Devin
  1. Wählen Sie aus, ob Sie Devin Zugriff auf All repositories oder Select repositories gewähren möchten, um zu steuern, auf welche Repositories Devin zugreifen kann.
Devin
  1. Nach Abschluss der GitHub-Autorisierung werden Sie zu den Devin-Einstellungen weitergeleitet, wo Sie überprüfen können, dass die Integration aktiv ist.
Devin
Wir empfehlen, Branch-Schutzregeln auf Ihrem Main-Branch zu aktivieren, um sicherzustellen, dass alle erforderlichen Checks erfolgreich sind, bevor Devin Änderungen mergen kann.

Verwendung von Devin mit der GitHub-Integration

Für Core- und Teams-Nutzer

Sobald die Integration konfiguriert ist, können Sie Repositories direkt in Ihren Prompts in der Devin-Webanwendung per @mention referenzieren.

Für Enterprise-Kunden

Sobald die Integration eingerichtet ist, können Sie Repositories über Enterprise Settings > Repository Permissions bestimmten Organisationen zuordnen.
Devin
Wenn Sie zum ersten Mal mit einem Repository arbeiten, empfehlen wir, die Einrichtung der Entwicklungsumgebung im Onboarding-Flow abzuschließen, um sicherzustellen, dass Devin über präzise, aktuelle Informationen zu Ihrer Codebasis verfügt. Devin beantwortet Kommentare in Pull Requests (PRs) automatisch, solange die Sitzung nicht archiviert wurde.

Verwalten von Devins Berechtigungen in GitHub

Während der Einrichtung kannst du Devin Zugriff auf alle Repositories in deiner Organisation gewähren oder den Zugriff auf bestimmte Repositories beschränken. Du kannst den Repository-Zugriff jederzeit über die Einstellungen von GitHub anpassen:
  1. Navigiere zu den Settings > GitHub Apps deiner GitHub-Organisation (z. B. https://github.com/organizations/<org_name>/settings/installations)
  2. Wähle Configure für die Devin.ai-Integration aus
  3. Wähle unter Repository access, ob du Zugriff auf alle Repositories gewähren oder bestimmte Repositories auswählen möchtest
  4. Klicke auf Save, um deine Änderungen zu übernehmen
Devin
Devin benötigt die folgenden Berechtigungen: Lesezugriff auf:
BerechtigungBeschreibung
dependabot alertsErmöglicht Devin, Dependabot-Warnungen in deinem Namen zu beheben (d. h. Aktualisieren von Abhängigkeitsversionen)
actionsErmöglicht Devin, die für ein Repository konfigurierten Actions einzusehen, um zu verstehen, ob Devins Änderungen die CI-Prüfungen erfolgreich durchlaufen
checksErmöglicht Devin, die für ein Repository konfigurierten Checks einzusehen, um zu verstehen, ob Devins Änderungen die CI-Prüfungen erfolgreich durchlaufen
commit statusesErmöglicht Devin zu sehen, ob ein Commit die CI-Prüfungen erfolgreich durchläuft
deploymentsErmöglicht Devin zu sehen, welche Versionen eines Repositories bereitgestellt wurden
metadataErmöglicht Devin, wichtige Metadaten zu einem Repository einzusehen, z. B. wer es besitzt
packagesErmöglicht Devin zu sehen, welche Versionen eines Repositories als Paket ausgeliefert wurden
pagesErmöglicht Devin, mit einem Repository verknüpfte Pages zu konsultieren, z. B. um Dokumentation einzusehen
repository advisoriesErmöglicht Devin, sicherheitsrelevante Hinweise zu einem Repository einzusehen, um bei der Behebung von Sicherheitsproblemen zu helfen
repository hooksErmöglicht Devin, die für ein Repository konfigurierten Hooks einzusehen, z. B. Linting und Typprüfungen
repository projectsErmöglicht Devin, mit einem Repository verknüpfte Projekte einzusehen, z. B. um Informationen zu einer Aufgabe abzurufen
Lese- und Schreibzugriff auf:
BerechtigungBeschreibung
codeErmöglicht Devin, zur Codebasis beizutragen
discussionsErmöglicht Devin, zu Discussions beizutragen
issuesErmöglicht Devin, neue Issues zu eröffnen
pull requestsErmöglicht Devin, neue PRs zu erstellen
workflowsErmöglicht Devin, neue Workflows einzurichten, z. B. zur Unterstützung bei der Konfiguration von CI/CD
Diese Berechtigungen ermöglichen es Devin, in deinen Repositories wie ein regulärer Contributor zu arbeiten – Branches zu pushen, Pull Requests zu eröffnen und sich an PR-Diskussionen zu beteiligen.

Pull-Request-Vorlagen

Wenn Devin einen Pull-Request erstellt, verwendet es eine Vorlage aus deinem Repository, um die PR-Beschreibung zu strukturieren. Wenn du eine Vorlage bereitstellst, hält sich Devin an deren Format, wenn es PRs auf GitHub einreicht. Sie können Devin eine eigene Vorlage zur Verfügung stellen, ohne Ihre standardmäßige, auf Menschen ausgerichtete Vorlage zu ändern, indem Sie eine Datei mit dem Namen devin_pr_template.md an einem der unten aufgeführten unterstützten PULL_REQUEST_TEMPLATE-Speicherorte hinzufügen. Das ist hilfreich, wenn Sie möchten, dass Devin zusätzlichen Kontext einbezieht, zum Beispiel eine Review-Checkliste oder ein Mermaid-Diagramm der geänderten Dateien.

Reihenfolge der Vorlagensuche

Devin sucht in der folgenden Reihenfolge nach Vorlagen und verwendet den ersten Treffer:
  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
Wenn keine Vorlage gefunden wird, greift Devin auf sein internes Standardformat für PR-Beschreibungen zurück.
Wenn du möchtest, dass Devin deine vorhandene pull_request_template.md verwendet, kopiere sie in einen der oben aufgeführten devin_pr_template.md-Pfade oder erstelle einen Symlink darauf.
Weitere Informationen zu GitHub-Pull-Request-Vorlagen (unterstützte Speicherorte, mehrere Vorlagen, Query-Parameter usw.) findest du in den GitHub Docs: Creating a pull request template for your repository.

Commit-Signierung

Während deines Repository-Setups kannst du das Devin-Terminal verwenden, um einen GPG-Schlüssel zu erstellen, der zum Signieren von Commits genutzt wird, gemäß dem Verfahren, das in GitHubs Dokumentation beschrieben ist. Wir empfehlen, in deiner Organisation ein dediziertes GitHub-Konto (z. B. devin@company.com) zu erstellen und es mit dem GPG-Schlüssel zu verknüpfen, sodass du Commits von Devin leicht identifizieren kannst.
Devin

Sicherheitsaspekte

  • Branchschutz: Wir empfehlen, Branchschutzregeln auf Ihrem Haupt-Branch zu aktivieren, um sicherzustellen, dass alle erforderlichen Prüfungen erfolgreich abgeschlossen sind, bevor Devin Änderungen zusammenführen kann.
  • Berechtigungen auf Organisationsebene: Devin verwendet die auf Organisationsebene gewährten Berechtigungen, nicht die Berechtigungen des einzelnen Benutzers, der eine Sitzung ausführt.
  • Einheitlicher Zugriff: Alle Benutzer mit Zugriff sowohl auf die GitHub- als auch auf die Devin-Organisation verfügen über dieselben Devin-Integrationsberechtigungen.
  • Repository-Erstellung: Devin kann in Ihrem GitHub-Konto keine neuen Repositories erstellen.

IP-Allowlisting

Wenn Ihre Organisation IP-Allowlisting für den Zugriff auf GitHub erfordert, fügen Sie die folgenden IP-Adressen hinzu:
  • 100.20.50.251
  • 44.238.19.62
  • 52.10.84.81
  • 52.183.72.253
  • 20.172.46.235
  • 52.159.232.99
Diese IP-Adressen können sich in zukünftigen Updates ändern. Wir empfehlen, unsere Release Notes auf etwaige Änderungen zu prüfen.

GitHub-Integration – FAQ

Ja, Sie können entweder eine GitHub-Organisation oder ein persönliches GitHub-Konto mit Ihrer Devin-Organisation verbinden. Wir empfehlen jedoch, das Konto zu verbinden, das über die passenden Berechtigungen verfügt, damit Devin auf die Repositorys zugreifen kann, die Ihr Team benötigt.
Nur Nutzer, die Mitglieder der Organisation sind, die die GitHub-Integration installiert hat, können sie in ihren Devin-Sitzungen verwenden. Devin erhält Zugriff auf die GitHub-Integration basierend auf der Organisationszugehörigkeit des Nutzers.
Verschlüsselungsschlüssel werden von AWS KMS verwaltet und regelmäßig erneuert.