Mit Gemini Code Assist in GitHub können Sie das Verhalten bei der Codeüberprüfung für einzelne Repositories anpassen oder Gruppenkonfigurationen auf mehrere Repositories anwenden.
Gemini Code Assist in GitHub unterstützt auch das Hinzufügen einer styleguide.md-Datei. Weitere Informationen zu dieser Funktion finden Sie im Styleguide für Code Reviews.
Felder für die Konfiguration
Sie können das Verhalten von Gemini Code Assist in GitHub ändern, indem Sie eine config.yaml-Datei in einen .gemini/-Ordner einfügen, der sich im Stammverzeichnis jedes Ihrer Repositories befindet. Die Datei config.yaml enthält verschiedene konfigurierbare Funktionen, die Sie aktivieren oder deaktivieren können. Eine vollständige Liste der Felder finden Sie im config.yaml-Schema.
Im Folgenden finden Sie eine Liste mit Überlegungen zu bestimmten anpassbaren Feldern in Gemini Code Assist in GitHub:
code_review: comment_severity_threshold: In diesem Feld wird der Mindestschweregrad festgelegt, für den Gemini Code Assist Kommentare postet. Wenn Sie beispielsweisecode_review: comment_severity_threshold: HIGHfestgelegt haben, stellt Gemini Code Assist keine Pull-Anfrage-Kommentare für Probleme bereit, die alsLOWoderMEDIUMeingestuft werden, z. B. kleinere Refactorings. Gemini Code Assist bestimmt den Schweregrad eines Kommentars anhand der Art und Bedeutung des betrachteten Problems. Verstöße gegen Ihren benutzerdefinierten Styleguide erreichen oder überschreiten in der Regel den Schweregradschwellenwert.ignore_patterns: In diesem Feld werden Glob-Muster verwendet. Bei der Interaktion mit dem Repository ignoriert Gemini Code Assist Dateien, die einem Muster in dieser Liste entsprechen.memory_config: Dieses Feld ist anwendbar, wenn Sie die verbesserte Antwortqualität zuvor für mehrere Repositories aktiviert haben. Wenn Sie die verbesserte Antwortqualität für mehrere Repositorys aktivieren, können Siememory_config: disabled: truefür ein bestimmtes Repository in der Gruppierung festlegen. Dadurch wird die Funktion für dieses Repository deaktiviert.
config.yaml Schema
Das folgende Code-Snippet ist das Schema für die Datei config.yaml. Darin sind alle möglichen Konfigurationsoptionen und ihre zulässigen Werte definiert:
$schema: "http://json-schema.org/draft-07/schema#" title: RepoConfig description: Configuration for Gemini Code Assist on a repository. All fields are optional and have default values. type: object properties: have_fun: type: boolean description: Enables fun features such as a poem in the initial pull request summary. Default: false. ignore_patterns: type: array items: type: string description: A list of glob patterns for files and directories that Gemini Code Assist should ignore. Default: []. memory_config: type: object description: Configuration for persistent memory, which is used to improve responses. properties: disabled: type: boolean description: Whether to disable persistent memory for this specific repository. Default: false. code_review: type: object description: Configuration for code reviews. All fields are optional and have default values. properties: disable: type: boolean description: Disables Gemini from acting on pull requests. Default: false. comment_severity_threshold: type: string enum: - LOW - MEDIUM - HIGH - CRITICAL description: The minimum severity of review comments to consider. Default: MEDIUM. max_review_comments: type: integer format: int64 description: The maximum number of review comments to consider. Use -1 for unlimited. Default: -1. pull_request_opened: type: object description: Configuration for pull request opened events. All fields are optional and have default values. properties: help: type: boolean description: Posts a help message on pull request open. Default: false. summary: type: boolean description: Posts a pull request summary on the pull request open. Default: false. code_review: type: boolean description: Posts a code review on pull request open. Default: true. include_drafts: type: boolean description: Enables agent functionality on draft pull requests. Default: true.
config.yaml-Beispiel
Das folgende Code-Snippet ist ein Beispiel für eine config.yaml-Datei. In diesem Beispiel ist für jede Eigenschaft der Standardwert festgelegt, der von Gemini Code Assist verwendet wird. Sie können dieses Snippet als Vorlage verwenden, um Ihre eigene config.yaml-Datei zu erstellen:
have_fun: false
memory_config:
disabled: false
code_review:
disable: false
comment_severity_threshold: MEDIUM
max_review_comments: -1
pull_request_opened:
help: false
summary: false
code_review: true
include_drafts: true
ignore_patterns: []
Konfigurationen in mehreren Repositories verwalten
Sie können bestimmte Einstellungen für mehrere Repositories umschalten, wenn sie nach einer Developer Connect-Verbindung gruppiert sind. Diese kollektiven Einstellungen werden über die Google Cloud -Konsole verwaltet.
Wenn ein Repository als Teil einer Gruppe verwaltet wird, aber auch eigene config.yaml hat, werden die config.yaml-Einstellungen des Repositorys durch die Gruppeneinstellungen überschrieben.
In den folgenden Schritten wird gezeigt, wie Sie eine Reihe von Konfigurationen für mehrere Repositorys steuern. Bei diesen Schritten wird davon ausgegangen, dass Sie Gemini Code Assist in GitHub bereits eingerichtet haben.
Rufen Sie in der Google Cloud Console die Seite Agenten und Tools für Gemini Code Assist auf.
Suchen Sie im Bereich Agents die Karte Code Assist Source Code Management und klicken Sie auf Erweitert.
Der Bereich Code Assist für Quellcodeverwaltung bearbeiten wird geöffnet.
Klicken Sie in der Tabelle Verbindungen auf den Namen der Verbindung, auf die Sie eine Konfiguration anwenden möchten.
Die Detailseite für die Verbindung wird geöffnet.
Aktualisieren Sie auf dem Tab Einstellungen die Einstellungen, die Sie ändern möchten.
Klicken Sie auf Speichern.