GitLab Duo-Konzepte
Im Folgenden finden Sie einige Konzepte und Begriffe, mit denen Sie bei der Verwendung von GitLab Duo mit Amazon Q
Themen
Einrichten von GitLab Duo mit Amazon Q
Bevor Sie die Funktionen der künstlichen Intelligenz (KI) von Amazon Q in GitLab Duo nutzen können, müssen Sie die Voraussetzungen erfüllen und AWS-Ressourcen erstellen. Weitere Informationen erhalten Sie unter Set up GitLab Duo with Amazon Q
Onboarding mit AWS-Ressourcen und Berechtigungsrichtlinien
Im Rahmen des Onboarding-Prozesses von GitLab Duo müssen Sie über die Konsole von Amazon Q Developer
Wenn die neue IAM-Rolle erstellt wird, wird auch die erforderliche Vertrauensrichtlinie mit den entsprechenden Berechtigungen generiert. Eine Rollenvertrauensrichtlinie ist eine erforderliche ressourcenbasierte Richtlinie die einer Rolle in IAM angefügt ist.
Sie müssen eine Berechtigungsrichtlinie hinzufügen, die Ihnen ermöglicht, eine Verbindung mit Amazon Q herzustellen und die Funktionen der Integration von GitLab Duo mit Amazon Q zu nutzen. Die Richtlinie muss bei der Erstellung der IAM-Rolle hinzugefügt werden. Weitere Informationen zu den Berechtigungen, die die Berechtigungsrichtlinie bietet, finden Sie unter GitLabDuoWithAmazonQPermissionsPolicy.
Alternativ können Sie eine eingebundene Richtlinie erstellen und die erforderlichen Berechtigungen hinzufügen. Sie können sich für eine eingebundene Richtlinie entscheiden, wenn Sie eine benutzerdefinierte Zugriffskontrolle wünschen. Weitere Informationen zu eingebundenen Richtlinien finden Sie unter Verwaltete Richtlinien und eingebundene Richtlinien und Policies and permissions in AWS Identity and Access Management im IAM-Benutzerhandbuch.
Vertrauensrichtlinie
Berechtigungsrichtlinie
Optional können Sie auch vom Kunden verwaltete Schlüssel (CMK) verwenden, um Ihre Ressourcen zu verschlüsseln, wenn Sie die volle Kontrolle über den Lebenszyklus und die Nutzung Ihres Schlüssels haben möchten. Mit dem Bedingungsschlüssel kms:ViaService können Sie einschränken, wer CMK zum Verschlüsseln oder Entschlüsseln von Inhalten verwenden kann. Weitere Informationen finden Sie unter Verwalten des Zugriffs auf Amazon Q Developer für Drittanbieter-Integrationen.
GitLab-Schnellaktionen
Wenn Schnellaktionen aufgerufen werden, führen sie Aufgaben bei GitLab-Problemen und Merge-Anforderungen für Sie aus. Informationen zum Aufrufen von Schnellaktionen in GitLab finden Sie in der GitLab-Dokumentation
Generierung und Iteration von Merge-Anforderungen
-
/q dev– ermöglicht es Ihnen, von einer allgemeinen Idee, die in einem GitLab-Problem erfasst wurde, dazu überzugehen, von Amazon Q anhand der vorgeschlagenen Codeimplementierung eine zur Überprüfung bereitgestellte Merge-Anforderung generieren zu lassen. Dies trägt dazu bei, den Prozess der Umwandlung von Konzepten in funktionierenden Code zu rationalisieren. Die Merge-Anforderung wird in einem neuen Branch erstellt und Amazon Q weist den Ersteller des Problems als Prüfer der Merge-Anforderung zu. Sie erhalten außerdem eine Zusammenfassung der Merge-Anforderung. Weitere Informationen erhalten Sie unter Turn an idea into a merge request. -
/q dev(überarbeiten) – ermöglicht es Ihnen, die vorgeschlagene Codeimplementierung von Amazon Q zu iterieren, anstatt bei einem Problem erneut zu beginnen. Amazon Q überprüft Ihr Feedback und aktualisiert den Code, der ursprünglich generiert wurde. Sie erhalten außerdem Commit-Nachrichten für jede vorgenommene Änderung. Die Beschreibung nach jeder Iteration wird aktualisiert, und ein Kommentar, der das Feedback beschreibt, wird in die Iteration aufgenommen. Anschließend können Sie die Vorschläge überprüfen und mit Ihrem Code zusammenführen. Weitere Informationen erhalten Sie unter Make code changes based on feedback.
Codetransformation
-
/q transform– ermöglicht es Ihnen, den Upgrade-Prozess von Java Maven 8 oder Java Maven 11 auf das Java-Maven-17-Projekt zu initiieren. Ausgehend von einem GitLab-Problem analysiert Amazon Q den Code, um die erforderlichen Java-Upgrades oder -Modernisierungen zu ermitteln, aktualisiert das Problem, öffnet automatisch eine neue Merge-Anforderung mit den vorgeschlagenen Änderungen und weist den Ersteller des Problems als Prüfer zu. Zum Entwickeln benötigen Sie ein Setup von GitLab Runner, das für die Codetransformation angepasst werden muss. Weitere Informationen erhalten Sie unter Anpassen einer CI/CD-Pipeline für die Codetransformation und Upgrade Java . Anmerkung
Die Quellversion eines Maven-Projekts muss identifiziert werden, bevor Sie Ihren Code transformieren können. Daher müssen Ihre Compiler-Einstellungen in einer
pom.xml-Datei festgelegt werden. Ihrepom.xml-Datei muss folglich eine Quelle und ein Zielhaben.
Generierung von Modultests
-
/q test– ermöglicht es Ihnen, Modultests für neu hinzugefügte Quellcodezeilen in Ihrer Merge-Anforderung zu generieren. Amazon Q kommentiert mit Vorschlägen für Modultests, die zu Ihrer Testdatei hinzugefügt werden können. Sie können die generierten Tests auf einmal anwenden oder jeden Test einzeln überprüfen, bevor Sie ihn übernehmen. Wenn in der Merge-Anforderung keine Testdatei gefunden wird, stellt Amazon Q die Modultests bereit, die Sie einer Testdatei manuell hinzufügen können. Weitere Informationen erhalten Sie unter Create test coverage.
Codeüberprüfung
-
/q review– ermöglicht es Ihnen, eine Überprüfung von Merge-Anforderungen in GitLab Duo mit Amazon Q einzuleiten. Für neue Merge-Anforderungen erfolgt eine automatische Codeüberprüfung. Als GitLab-Administrator können Sie Amazon Q auch so konfigurieren, dass automatische Überprüfungen deaktiviert werden. Automatisierte Codeüberprüfungen identifizieren und beheben potenzielle Probleme, während Amazon Q Codekorrekturen für Ihre Merge-Anforderung generiert und vorschlägt. Sie bieten Qualitätsprüfungen und Analysen auf Probleme, logische Fehler, Anti-Muster, Codeduplizierung und mehr.Amazon Q bietet Ihnen eine Codeanalyse mit Kommentaren, wobei jeder Kommentar eine separate Erkenntnis liefert. Diese Schnellaktion ist für alle Sprachen verfügbar. Automatische Codeüberprüfungen werden eingeleitet, wenn Sie neue Merge-Anforderungen öffnen oder zuvor geschlossene Anforderungen erneut öffnen. Automatische Codeüberprüfungen werden jedoch nicht durch nachfolgende Commits ausgelöst, die innerhalb einer bestehenden Merge-Anforderung vorgenommen wurden. Mithilfe der Schnellaktion
/q reviewkönnen Sie eine Codeüberprüfung manuell auslösen.Sie können Codeüberprüfungen so konfigurieren, dass sie bei jeder neuen Merge-Anforderung innerhalb Ihrer GitLab-Instance oder -Gruppe automatisch ausgeführt werden. Weitere Informationen erhalten Sie unter Review a merge request
.
Chat-Sitzung auf der Webbenutzeroberfläche und in IDEs
-
GitLab Duo Chat and Code Suggestions arbeitet mit Amazon Q zusammen, um Unterstützung bei der CI/CD-Konfiguration, bei Fehlererklärungen und bei der Beantwortung von Fragen zu bieten. Sie können Slash-Befehle in einer Chat-Sitzung verwenden, um die Chat-Funktionen von GitLab Duo mit Amazon Q aufzurufen. Weitere Informationen erhalten Sie unter Ask GitLab Duo Chat
.