Code mit BigQuery Studio-Git-Repositories verwalten
Sie können SQL-Scripts und Notebooks mit BigQuery Studio-Git-Repositories verwalten. Diese Funktion integriert die Versionsverwaltung direkt in den Dateibrowser von BigQuery Studio. So können Sie Repositorys klonen, Zweige verwalten und Git-Vorgänge ausführen, ohne die Cloud de Confiance Konsole zu verlassen.
BigQuery Studio-Git-Repositories bieten im Vergleich zu klassischen Repositories eine optimierte, ordnerbasierte Benutzeroberfläche. BigQuery Studio-Git-Repositories werden direkt im linken Bereich unter Ihrem Nutzer-Stammordner angezeigt.
Mit BigQuery Studio-Git-Repositories können Sie mit Ihren Code-Assets wie mit Standarddateien und ‑verzeichnissen interagieren und gleichzeitig eine Verbindung zu einem Remote-Git-Repository aufrechterhalten.
Beschränkungen
- BigQuery Studio-Git-Repositories sind auf den Kontext des Nutzer-Stammordners beschränkt und für die private Nutzung vorgesehen. Geben Sie diese Repositories nicht für andere Nutzer frei. Obwohl diese Repositories im Stammordner des Nutzers angezeigt werden, der eine virtuelle Darstellung Ihrer Assets im Projekt ist, werden sie technisch auf Projektebene erstellt.
- Die Verwendung eines Developer Connect-Konto-Connectors mit einem Git-Proxy wird nicht unterstützt.
- Dateisystemvorgänge am Bereitstellungspfad verbrauchen Dataform-Kontingent.
- Das Klonen von Repositories mit einer großen Anzahl von Dateien, großen Dateigrößen, vielen Branches oder einem tiefen und komplexen Commit-Verlauf dauert länger. Der Klonvorgang überschreitet möglicherweise das Zeitlimit für den Vorgang, wodurch verhindert wird, dass das Repository erfolgreich erstellt wird.
- Die Größe von Notebook-Dateien, die in einem BigQuery Studio-Git-Repository-Mount gespeichert sind, darf 30 MB nicht überschreiten. Wenn Ihre Dateien größer als 30 MB sind, speichern Sie sie im lokalen Speicher Ihrer Colab-Laufzeit außerhalb des eingebundenen Speicherorts.
Wenn Sie Änderungen an einem Git-Repository außerhalb des Mounts vornehmen, z. B. durch Bearbeiten oder Umbenennen von Dateien im linken Bereich, kann es bis zu 60 Sekunden dauern, bis diese Änderungen im Mount in der Laufzeit Ihres Notebooks sichtbar werden. Sie können diese Dauer anpassen, indem Sie den Parameter
CACHE_TTL_SECONDSan den Konstruktor übergeben:FuseWidget(CACHE_TTL_SECONDS=NUMBER)Ersetzen Sie
NUMBERdurch die Anzahl der Sekunden, die der Cache gültig bleiben soll. Wenn Sie diesen Wert verringern, wird die Synchronisierung häufiger durchgeführt und das Dataform-Kontingent wird schneller aufgebraucht.
Hinweis
Aktivieren Sie die Developer Connect API in Ihrem Cloud de Confiance -Projekt.
Erforderliche Rollen
Bitten Sie Ihren Administrator, Ihnen die IAM-Rolle Developer Connect OAuth User (roles/developerconnect.oauthUser) für das Projekt zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Verwalten von Code mit BigQuery Studio-Git-Repositories benötigen.
Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.
Diese vordefinierte Rolle enthält die Berechtigungen, die zum Verwalten von Code mit BigQuery Studio-Git-Repositories erforderlich sind. Maximieren Sie den Abschnitt Erforderliche Berechtigungen, um die notwendigen Berechtigungen anzuzeigen:
Erforderliche Berechtigungen
Die folgenden Berechtigungen sind erforderlich, um Code mit BigQuery Studio-Git-Repositories zu verwalten:
-
resourcemanager.projects.get -
resourcemanager.projects.list -
developerconnect.operations.list -
developerconnect.operations.get -
developerconnect.locations.list -
developerconnect.locations.get -
developerconnect.users.startOAuth -
developerconnect.users.finishOAuth -
developerconnect.users.fetchAccessToken -
developerconnect.users.getSelf -
developerconnect.users.deleteSelf -
developerconnect.accountConnectors.get -
developerconnect.accountConnectors.list -
developerconnect.accountConnectors.gitProxyUse -
developerconnect.accountConnectors.httpProxyUse -
developerconnect.accountConnectors.gitProxyRead -
developerconnect.accountConnectors.gitProxyWrite -
developerconnect.accountConnectors.httpProxyRead -
developerconnect.accountConnectors.httpProxyWrite -
developerconnect.accountConnectors.fetchUserRepositories
Sie können diese Berechtigungen auch mit benutzerdefinierten Rollen oder anderen vordefinierten Rollen erhalten.
BigQuery Studio-Git-Repository erstellen
Beachten Sie beim Erstellen eines Git-Repositorys die folgenden Anforderungen:
- Das Verbinden eines Remote-Git-Repositorys mit einem Git-Repository kann fehlschlagen, wenn das Remote-Repository nicht für das öffentliche Internet geöffnet ist, z. B. wenn es sich hinter einer Firewall befindet. Fügen Sie in diesem Fall die erforderlichen Dataform-IP-Adressbereiche für ausgehenden Traffic zu Ihren Firewallregeln hinzu, um Verbindungen zu geschützten Remote-Repositories zu ermöglichen.
- Wenn Sie ein Git-Repository erstellen möchten, das mit einem Remote-Git-Repository verbunden ist, das nicht auf der Zulassungsliste in der
dataform.restrictGitRemotes-Organisationsrichtlinie steht, fügen Sie das Remote-Git-Repository zuerst derallowedValues-Liste in der Richtlinie hinzu und erstellen Sie dann das Git-Repository. Weitere Informationen finden Sie unter Remote-Repositories einschränken.
So erstellen Sie ein Git-Repository:
Rufen Sie in der Cloud de Confiance Console die Seite BigQuery auf.
Klicken Sie im linken Bereich auf Dateien, um den Dateibrowser zu öffnen.
Wenn Sie den linken Bereich nicht sehen, klicken Sie auf Linken Bereich maximieren, um ihn zu öffnen.
Klicken Sie neben dem Stammknoten Ihres Nutzers auf Aktionen ansehen > Erstellen > Git-Repository.
Geben Sie die URL Ihres Remote-Git-Repositorys ein.
In BigQuery Studio wird erkannt, ob ein vorhandener Developer Connect-Kontoverbindungs-Connector verfügbar ist. Sie haben folgende Möglichkeiten:
- Wenn ein Konto-Connector gefunden wird, wird der Anzeigename für das Git-Repository vorausgefüllt. Sie können diese Werte bearbeiten.
- Wenn kein Konto-Connector vorhanden ist, klicken Sie auf Konto-Connector erstellen, um einen neuen Konto-Connector zu erstellen.
- Wenn Sie keinen Connector für ein Developer Connect-Konto verwenden möchten, klicken Sie auf Anderen Verbindungstyp verwenden, um eine Verbindung über HTTPS oder SSH herzustellen.
Klicken Sie auf Verbinden.
Datei bearbeiten
Wenn Sie eine Datei bearbeiten möchten, klicken Sie auf einen Dateiknoten, z. B. ein SQL-Script oder ein Notebook, um die Datei auf einem neuen Editor-Tab zu öffnen.
Alle Änderungen werden automatisch gespeichert.
Dateien verwalten
Über das Aktionsmenü, das mit jedem Element verknüpft ist, können Sie Standardverwaltungsaufgaben ausführen. Klicken Sie neben einem beliebigen Verzeichnis oder einer beliebigen Datei auf Aktionen öffnen, um auf diese Optionen zuzugreifen.
Auf Verzeichnisebene können Sie die folgenden Aufgaben ausführen:
- Im Repository erstellen: Erstellen Sie neue Code-Assets wie SQL-Abfragen, Notebooks, Daten-Canvas, Datenaufbereitungen, Dateien oder Unterverzeichnisse.
- In Repository hochladen: Importieren Sie vorhandene Dateien von Ihrem lokalen Computer in das ausgewählte Verzeichnis.
- Umbenennen: Ändern Sie den Namen des Verzeichnisses.
- Verschieben: Das Verzeichnis wird an einen anderen Ort verschoben. Sie können ein Verzeichnis nur an einen anderen Speicherort innerhalb desselben Git-Repositorys verschieben. Weitere Informationen finden Sie unter Dateien und Verzeichnisse verschieben oder kopieren.
- Löschen: Das Verzeichnis und alle zugehörigen Inhalte werden dauerhaft aus Ihrem lokalen Arbeitsbereich entfernt.
Auf Dateiebene können Sie die folgenden Aufgaben ausführen:
- Öffnen oder Öffnen in: Die Datei wird im Standardeditor oder in einer bestimmten Anwendung, z. B. einer bestimmten Notebook-Umgebung, geöffnet.
- Umbenennen: Ändern Sie den Dateinamen.
- Kopieren: Erstellt ein Duplikat der Datei. Sie können Dateien nur in Verzeichnisse innerhalb desselben Git-Repositorys kopieren.
- Verschieben: Die Datei wird in ein anderes Verzeichnis innerhalb desselben Git-Repositorys verschoben. Weitere Informationen finden Sie unter Dateien und Verzeichnisse verschieben oder kopieren.
- Herunterladen: Speichern Sie eine Kopie der Datei auf Ihrem lokalen Computer.
- Löschen: Die Datei wird aus Ihrem Arbeitsbereich entfernt.
Dateien und Verzeichnisse verschieben oder kopieren
Sie können Dateien und Verzeichnisse verschieben oder kopieren, aber sie müssen im selben Git-Repository bleiben.
Rufen Sie in der Cloud de Confiance Console die Seite BigQuery auf.
Klicken Sie im linken Bereich auf Dateien, um den Dateibrowser zu öffnen.
Suchen Sie die Datei oder das Verzeichnis, die bzw. das Sie verschieben oder kopieren möchten.
Klicken Sie auf Aktionen öffnen > Verschieben oder Kopieren.
Wählen Sie im angezeigten Dialogfeld das Zielverzeichnis im selben Git-Repository aus.
Klicken Sie auf Verschieben oder Kopieren.
Commit durchführen und Änderungen per Push-Befehl übertragen
So synchronisieren Sie Ihre lokalen Änderungen mit Ihrem Remote-Repository:
Rufen Sie in der Cloud de Confiance Console die Seite BigQuery auf.
Klicken Sie im linken Bereich auf Repository.
Optional: Bewegen Sie den Mauszeiger auf eine geänderte Datei und klicken Sie auf Unterschied anzeigen, um einen zeilenweisen Vergleich zwischen Ihrer lokalen Version und der zuletzt committeten Version zu sehen.
Geben Sie im Feld Commit-Nachricht eine Beschreibung Ihrer Änderungen ein.
Klicken Sie auf Commit. Ihre Änderungen werden im Git-Verlauf Ihres lokalen Zweigs gespeichert.
Klicken Sie auf An Remote-Zweig übertragen. Ihre Änderungen werden mit dem Remote-Repository synchronisiert.
Neuen Zweig auschecken
Sie können lokale Zweige verwalten und einen neuen lokalen Zweig auf Grundlage eines vorhandenen lokalen oder Remote-Tracking-Zweigs erstellen.
Auf dem Tab Repository sehen Sie im Bereich Branches Ihre ausgecheckten lokalen Branches. Das Label CURRENT gibt den aktiven Branch an und das Label DEFAULT den Standardbranch des Repositorys.
So checken Sie einen neuen Branch aus:
Rufen Sie in der Cloud de Confiance Console die Seite BigQuery auf.
Klicken Sie im linken Bereich auf Repository.
Maximieren Sie den Bereich Branches.
Klicken Sie neben einem Branch auf Aktionen öffnen und dann auf Neuen Branch auschecken.
Wählen Sie im Menü Quellzweig den Zweig aus, auf dem der neue Zweig basieren soll, z. B.
origin/main.Geben Sie im Feld Zweig-Name einen Namen für den neuen Zweig ein.
Klicken Sie auf Zur Kasse. BigQuery Studio checkt zuerst den Quellzweig aus. Wenn der angegebene Branch-Name auf einen neuen Branch verweist, wird dieser auf Grundlage der Quelle erstellt. Der neue Zweig wird zum aktiven Zweig und der Inhalt Ihres Git-Repositorys wird automatisch aktualisiert, um den Status des ausgecheckten Zweigs widerzuspiegeln.
Auf Notebook-Dateien in einem Git-Repository-Mount zugreifen
Wenn Sie über ein BigQuery Studio-Git-Repository auf ein Notebook zugreifen, können Sie das Host-Git-Repository in die Laufzeit des Notebooks einbinden. Eine Einbindung ist eine Verbindung, durch die Ihr Remote-Git-Repository so aussieht, als wäre es ein lokales Repository in der Laufzeit Ihres Notebooks. So kann Ihr Notebook direkt auf andere Dateien und Abfrageskripts im selben Repository zugreifen, diese lesen und in sie schreiben.
Git-Repository einbinden
Führen Sie den folgenden Python-Code in Ihrem Notebook aus, um das Git-Repository einzubinden:
from google_dataform_fuse_widget import FuseWidget
FuseWidget()
Wenn das Notebook mit der Bereitstellung verbunden ist, treten die folgenden Änderungen ein:
- Das aktuelle Arbeitsverzeichnis der Notebook-Sitzung wird aktualisiert, um den relativen Pfad im Git-Repository widerzuspiegeln. So wird sichergestellt, dass der pfadbasierte Dateizugriff automatisch funktioniert.
- Der Pfad des Git-Repositorys in der Laufzeit des Notebooks wird dem Python-Systempfad hinzugefügt. So können Sie Standard-Python-Importanweisungen verwenden, um Abfrageskripts und Dateien aus Ihrem Git-Repository direkt in Ihr Notebook zu laden.
Bereitstellung und Verbindung verwalten
Verwenden Sie die folgenden Steuerelemente, um Ihren Arbeitsbereich zu verwalten:
- Arbeitsbereich bereitstellen: Startet den Bereitstellungsprozess für das Git-Repository. Die Bereitstellung ist eine freigegebene Ressource. Wenn also mehrere Notebooks in derselben Colab-Laufzeit dasselbe Git-Repository verwenden, wird für sie dieselbe Bereitstellung verwendet.
- Arbeitsbereich unmounten: Der Mount-Vorgang für das Git-Repository wird beendet. Wenn Sie den Arbeitsbereich aushängen, ist er für alle Notebooks in dieser Colab-Laufzeitumgebung nicht mehr verfügbar.
- Arbeitsbereich verbinden: Startet die Verbindung zu einem aktiven Mount für die aktuelle Notebook-Sitzung. Durch die Verbindung werden das Arbeitsverzeichnis und der Systempfad des Notebooks aktualisiert, sodass das Git-Repository enthalten ist. So können Sie auf Dateien zugreifen und sie importieren.
- Workspace trennen: Beendet die Mount-Verbindung für die aktuelle Notebook-Sitzung und setzt sie auf den Standardstatus zurück. Das Trennen der Verbindung wirkt sich nicht auf den Status der Mount-Verbindung für andere aktive Notebook-Sitzungen aus. Wenn Sie die Verbindung Ihrer Sitzung beenden möchten, empfehlen wir, die Schaltfläche Arbeitsbereich trennen zu verwenden.
- Reparieren: Stellt einen Mount oder eine Verbindung wieder her, wenn sie nicht mehr verwendet werden kann.
Nachdem Sie die Halterung initialisiert haben, sehen Sie in der Statusleiste den Echtzeitstatus und den aktiven Pfad der Halterung. Die möglichen Systemzustände sind Connected (Verbunden), Mounted (Eingebunden), Stopped (Angehalten) und Unhealthy (Fehlerhaft).