Skip to main content
Skip to content

Informationen zu Autofix für Codescanning

Autofix generiert potenzielle Korrekturen für code scanning Warnungen und hilft Ihnen dabei, vorhandene Sicherheitsrisiken zu beheben.

Wer kann dieses Feature verwenden?

Agentic Autofix hat engere Teilnahmevoraussetzungen als Copilot Autofix und ist für benutzereigene Repositorys in einem Unternehmen, das Enterprise Managed Users verwendet, nicht verfügbar. Ausführliche Informationen findest du unter Informationen zu Autofix für Codescanning.

Copilot Autofix für code scanning ist für die folgenden Repository-Typen verfügbar:

  • Öffentliche Repositorys auf GitHub.com
  • Organisationseigene Repositorys auf GitHub Team mit GitHub Code Security aktivierter Option

Weitere Informationen zu berechtigten Produkten finden Sie unter Informationen zu GitHub Advanced Security.

GitHub bietet zwei separate AutoFix-Oberflächen für code scanning Warnungen: agentic autofix und Copilot Autofix. Beide verwenden große Sprachmodelle (LLMs), Daten aus der Codebasis und code scanning-Analyse, um potenzielle Codeänderungen und Erklärungen zu generieren. Sie haben jedoch unterschiedliche Workflows, Ergebnisse, Zugriffsanforderungen und Verwendung.

Was sind die beiden Arten von Autofix?

Agentic Autofix und Copilot Autofix lösen verschiedene Probleme:

  • Verwenden Sie agentic autofix, wenn Copilot eine oder mehrere Warnungen für Sie vollständig untersuchen und beheben soll.
  • Verwenden Sie Copilot Autofix, wenn Sie eine einzelne vorgeschlagene Codeänderung für eine Warnung wünschen, die Sie überprüfen und selbst anwenden möchten.

Mit agentic autofix weisen Sie Copilot eine oder mehrere Warnungen zu. Es untersucht die Codebasis, generiert einen Fix und überprüft die Änderungen. Anschließend wird ein Entwurfs-Pull-Request geöffnet, der den vorgeschlagenen Fix enthält.

Mit Copilot Autofix generiert GitHub eine einzelne vorgeschlagene Codeänderung für eine unterstützte Warnung. Sie können diesen Vorschlag verwenden, um selbst einen Pull Request zu erstellen.

Wo ist autofix verfügbar?

Der Zugriff auf die beiden Features funktioniert unterschiedlich. Für agentic autofix in einem organisationseigenen Repository muss ein Organisationsbesitzer oder Sicherheitsmanager es aktivieren. Wenn die Organisation zu einem Unternehmen gehört, muss auch ein Unternehmensbesitzer oder Sicherheitsmanager dies zulassen. Die Aktivierung auf Organisationsebene aktiviert sie standardmäßig für berechtigte Repositorys, aber ein Repositoryadministrator kann dies deaktivieren oder erneut aktivieren, wenn Einstellungen auf höherer Ebene dies zulassen.

Für ein berechtigtes öffentliches Repository, das einem persönlichen Konto gehört, kann ein Repositoryadministrator agentic autofix direkt aktivieren. Sie benötigen keine Copilot Lizenz für die Verwendung von agentic autofix, aber sie ist nicht für Repositorys verfügbar, die sich im Besitz von Enterprise Managed Users befinden. Einzelheiten findest du unter Verwalten des Zugriffs auf agentengestützte autofix für die Codeüberprüfung.

Copilot Autofix ist im Gegensatz dazu für jedes Repository, das CodeQL verwendet, standardmäßig aktiviert, es sei denn, ein Administrator deaktiviert es. Es ist für alle öffentlichen Repositorys verfügbar auf GitHub.com. Es ist auch für interne oder private Repositorys verfügbar, die im Besitz von Organisationen und Unternehmen sind, die eine Lizenz für GitHub Code Security haben. Im Gegensatz zu agentic autofix ist Copilot Autofix für Repositorys verfügbar, die im Besitz von Enterprise Managed Users sind.

Auswählen eines Autofix-Typs

Die Nutzungskosten spielen auch eine Rolle bei der Wahl, welche Funktion verwendet werden soll. Jede agentic autofix Agentsitzung verbraucht GitHub Actions und Copilot Autofix Minuten, während AI credits vorgeschlagene Fixes AI credits nicht verbrauchen.

Wenn agentic autofix für ein Repository nicht aktiviert ist, können Sie weiterhin Copilot Autofix verwenden, um vorgeschlagene Korrekturen für unterstützte Warnungen zu generieren.

Verwenden von agentic autofix

Verwenden Sie agentic autofix, wenn Sie möchten, dass Copilot eine oder mehrere Warnmeldungen untersucht und einen Pull Request-Entwurf vorbereitet. Sie können agentic autofix Benachrichtigungen aus dem Repository-Backlog oder einer Sicherheitskampagne zuweisen. Jede Zuweisung startet eine Agent-Sitzung. Die Sitzung untersucht die Codebasis über die betroffene Datei hinaus, generiert und überprüft dann einen Fix. Es öffnet einen Pull Request mit den Änderungen. Siehe Lösen von Code-Scan-Warnungen.

Beachten Sie Folgendes:

Überprüfen und testen Sie die generierten Änderungen immer, bevor Sie den Pull Request zusammenführen.

Verwenden von Copilot Autofix

Copilot Autofix funktioniert auf die gleiche Weise, ob ein Repository das standardmäßige oder erweiterte Setup für code scanning verwendet. Es gibt keinen separaten Schritt, um es zu aktivieren: Das Aktivieren von code scanning mit CodeQL ist ausreichend. Siehe Konfigurieren des Standardsetups für das Code-Scanning.

Copilot Autofix ist auch ein integraler Bestandteil von GitHub Code Quality, und wird auch dann weiterhin für Codequalitätsergebnisse ausgeführt, wenn dies für code scanning-Ergebnisse deaktiviert ist.

Administratoren auf Unternehmens-, Organisations- und Repositoryebene können Copilot Autofix deaktivieren. Einstellungen werden nach unten weitergegeben: Wenn ein Unternehmensbesitzer die Funktion nicht zulässt, kann keine Organisation und kein Repository in diesem Unternehmen sie aktivieren, und wenn ein Organisationsbesitzer sie deaktiviert, kann kein Repository in dieser Organisation sie erneut aktivieren. Um das Feature auf einer bestimmten Ebene wiederherzustellen, muss ein Administrator auf dieser Ebene oder einer ebene darüber die Einstellung umkehren. Informationen zum Verwalten Copilot Autofix auf jeder Ebene finden Sie unter Copilot Autofix für Codeüberprüfungsscans deaktivieren.