Git-Operationen in Snowflake¶
Unter diesem Thema wird beschrieben, wie Sie gängige Repository-Operationen ausführen.
Git-Repository in Snowflake-Konto integrieren¶
Informationen zum Einrichten einer Integration mit einem Git-Repository finden Sie unter Einrichten von Snowflake für Verwendung von Git.
Repository-Stagingbereich des Repositorys aktualisieren¶
Sie können den Repository-Stagingbereich mit einem vollständigen Klon aktualisieren, der alle Zweige, Tags und Commits aus dem externen Repository abruft. Dabei entfernen Sie auch Zweige und Commits, die früher abgerufen worden waren, aber nicht mehr im externen Repository vorhanden sind.
Um die in diesem Abschnitt beschriebenen Operationen auszuführen, benötigen Sie den Snowflake-Zugriff, der unter Zugriffssteuerung für ALTER GIT REPOSITORY beschrieben ist.
Sie können den Repository-Stagingbereich entweder mit Snowsight oder SQL aktualisieren.
Wenn Sie den Repository-Stagingbereich aktualisieren möchten, können Sie den Inhalt des integrierten Git-Repositorys mit dem Befehl ALTER GIT REPOSITORY in den Repository-Stagingbereich abrufen.
Der Code im folgenden Beispiel aktualisiert den Repository-Stagingbereich mit dem Inhalt des Repositorys:
ALTER GIT REPOSITORY snowflake_extensions FETCH;
Sie können Snowsight verwenden, um den Repository-Stagingbereich (der einen Klon des externen Repositorys enthält) mit dem externen Repository zu aktualisieren.
Melden Sie sich bei Snowsight an.
Wählen Sie im Navigationsmenü die Option Data » Databases aus.
Wählen Sie im Objekt-Explorer die Datenbank und das Schema aus, die den Git-Repository-Stagingbereich enthalten, das Sie aktualisieren möchten.
Öffnen Sie innerhalb des Schemas Git Repositories.
Wählen Sie unter Git Repositories das Repository aus, um die zugehörige Detailseite anzuzeigen.
Wählen Sie in den Repository-Details auf der Registerkarte Files Explorer die Schaltfläche Fetch aus, um den Repository-Stagingbereich zu aktualisieren.
Liste der Repository-Dateien anzeigen¶
Sie können eine Liste der Dateien in einem Zweig, Tag oder Commit entweder mit Snowsight oder SQL anzeigen.
Sie können eine Liste der Dateien im Repository anzeigen, indem Sie den Befehl LIST wie folgt verwenden (Sie können LIST mit LS abkürzen):
Liste nach Zweigname:
LS @repository_stage_name/branches/branch_name;
Liste nach Tag-Name:
LS @repository_stage_name/tags/tag_name;
Liste nach Commit-Hash:
LS @repository_stage_name/commits/commit_hash;
Das folgende Beispiel generiert eine Ausgabe, die die Dateien im Hauptzweig des Git-Repositorys snowflake_extensions
auflistet:
LS @snowflake_extensions/branches/main;
Der obige Befehl generiert eine Ausgabe ähnlich der folgenden:
-------------------------------------------------------------------------------------------------------------------------------------------------------
| name | size | md5 | sha1 | last_modified |
-------------------------------------------------------------------------------------------------------------------------------------------------------
| snowflake_extensions/branches/main/.gitignore | 10 | | e43b0f988953ae3a84b00331d0ccf5f7d51cb3cf | Wed, 5 Jul 2023 22:42:34 GMT |
-------------------------------------------------------------------------------------------------------------------------------------------------------
| snowflake_extensions/branches/main/python-handlers/filter.py | 169 | | c717137b18d7b75005849d76d89037fafc7b5223 | Wed, 5 Jul 2023 22:42:34 GMT |
-------------------------------------------------------------------------------------------------------------------------------------------------------
Sie können Snowsight verwenden, um eine Liste der Zweige und Tags in Ihrem Git-Repository anzuzeigen.
Melden Sie sich bei Snowsight an.
Wählen Sie im Navigationsmenü die Option Data » Databases aus.
Wählen Sie im Objekt-Explorer die Datenbank und das Schema aus, die den Git-Repository-Stagingbereich enthalten, das Sie anzeigen möchten.
Öffnen Sie innerhalb des Schemas Git Repositories.
Wählen Sie unter Git Repositories das Repository aus, um die zugehörige Detailseite anzuzeigen.
Wählen Sie auf der Detailseite des Repositorys auf der Registerkarte Files Explorer die Schaltfläche Branch aus.
Wählen Sie im Dropdown-Menü Branch eine der folgenden Optionen aus:
Um eine Liste der aus dem Repository geklonten Zweige anzuzeigen, wählen Sie Branches aus.
Um eine Liste der aus dem Repository geklonten Tags anzuzeigen, wählen Sie Tags aus.
Wählen Sie den Zweig oder das Tag aus, dessen Dateien Sie auflisten möchten.
Unterhalb des Repository-Namens sehen Sie die Liste der Ordner und Dateien, die der von Ihnen getroffenen Auswahl entsprechen.
Eigenschaften des Repository-Stagingbereichs anzeigen¶
Sie können die mit einem Repository-Stagingbereich verbundenen Eigenschaften anzeigen.
Um die in diesem Abschnitt beschriebenen Operationen auszuführen, benötigen Sie den Snowflake-Zugriff, der unter Zugriffssteuerung für DESC GIT REPOSITORY beschrieben ist.
Sie können die Eigenschaften eines Repository-Stagingbereichs anzeigen, indem Sie entweder Snowsight oder SQL verwenden.
Sie können die Eigenschaften des Repository-Stagingbereichs mit den SQL-Befehlen SHOW GIT REPOSITORIES und DESCRIBE GIT REPOSITORY anzeigen.
Zu den Eigenschaftsinformationen gehören die Git-Ursprungs-URL, der Name der API-Integration und die Anmeldeinformationen (angegeben als Geheimnis), die für die Verbindung mit dem externen Repository verwendet werden, und so weiter.
DESCRIBE GIT REPOSITORY snowflake_extensions;
Der obige Befehl generiert eine Ausgabe ähnlich der folgenden:
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
| CREATED_ON | NAME | DATABASE_NAME | SCHEMA_NAME | ORIGIN | API_INTEGRATION | GIT_CREDENTIALS | OWNER | OWNER_ROLE_TYPE | COMMENT |
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
| 2023-06-28 08:46:10.886 -0700 | SNOWFLAKE_EXTENSIONS | MY_DB | MAIN | https://github.com/my-account/snowflake-extensions.git | GIT_API_INTEGRATION | MY_DB.MAIN.GIT_SECRET | ACCOUNTADMIN | ROLE | |
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Sie können Snowsight verwenden, um die Eigenschaften des Repositorys anzuzeigen.
Melden Sie sich bei Snowsight an.
Wählen Sie im Navigationsmenü die Option Data » Databases aus.
Wählen Sie im Objekt-Explorer die Datenbank und das Schema aus, die den Git-Repository-Stagingbereich enthalten, das Sie anzeigen möchten.
Öffnen Sie innerhalb des Schemas Git Repositories.
Wählen Sie unter Git Repositories das Repository aus, um die zugehörige Detailseite anzuzeigen.
Wählen Sie auf der Detailseite des Repositorys die Registerkarte Git Repository Details aus, um die folgenden Informationen anzuzeigen:
Ursprung des Repositorys
API-Integration und Anmeldeinformationen (angegeben als Geheimnis), die von Snowflake für die Interaktion mit dem externen Repository verwendet werden
Berechtigungen für den Repository-Stagingbereich
Code aus einem Repository ausführen¶
Sie können den Code ausführen, der in einer Datei aus dem Repository enthalten ist.
Um die in diesem Abschnitt beschriebenen Operationen auszuführen, benötigen Sie den Snowflake-Zugriff, der unter Zugriffssteuerung für EXECUTE IMMEDIATE FROM beschrieben ist.
Sie können Code ausführen, indem Sie entweder Snowsight oder SQL verwenden.
Sie können EXECUTE IMMEDIATE FROM verwenden, um Code in einem Repository-Stagingbereich auszuführen.
Der Code im folgenden Beispiel führt Code in create-database.sql
aus dem Repository-Stagingbereich snowflake_extensions
aus:
EXECUTE IMMEDIATE FROM @snowflake_extensions/branches/main/sql/create-database.sql;
Sie können Snowsight verwenden, um SQL-Code aus einem Git-Repository auszuführen.
Beachten Sie, dass beim Ausführen von Code auf diese Weise keine Ausgabe angezeigt wird, die durch die Ausführung des Codes generiert wird.
Melden Sie sich bei Snowsight an.
Wählen Sie im Navigationsmenü die Option Data » Databases aus.
Wählen Sie im Objekt-Explorer die Datenbank und das Schema aus, die den Git-Repository-Stagingbereich enthalten, das Sie anzeigen möchten.
Öffnen Sie innerhalb des Schemas Git Repositories.
Wählen Sie unter Git Repositories das Repository aus, um die zugehörige Detailseite anzuzeigen.
Wählen Sie auf der Detailseite des Repositorys auf der Registerkarte Files Explorer die Schaltfläche Branch aus.
Wählen Sie im Dropdown-Menü Branch eine der folgenden Optionen aus:
Branches, um eine Liste der aus dem Repository geklonten Zweige anzuzeigen.
Tags, um eine Liste der aus dem Repository geklonten Tags anzuzeigen.
Wählen Sie den Zweig oder das Tag aus, in dem die Datei enthalten ist, deren Code Sie ausführen möchten.
Wählen Sie unterhalb des Repository-Namens den Ordner aus, der die Datei enthält, die Sie ausführen möchten.
Suchen Sie die Datei, deren Code Sie ausführen möchten, und wählen Sie
» Execute immediate aus.
Überprüfen Sie in dem daraufhin angezeigten Feld den in der Datei enthaltenen Code.
Dies ist der Code, den Snowflake ausführen wird.
Um den angezeigten Code auszuführen, wählen Sie Execute Immediate aus.
Auf der Detailseite wird eine Meldung angezeigt, dass die Ausführung des Codes gestartet wurde. Später wird hier angezeigt, ob die Ausführung erfolgreich war oder fehlgeschlagen ist.
Repository-basierten Code in ein Arbeitsblatt kopieren¶
Sie können schnell Code aus einer Repository-Datei in ein Arbeitsblatt kopieren. Sie können den kopierten Code bearbeiten und ausführen oder ihn als schreibgeschützte Vorlage für andere Benutzer verwenden.
Sie können den Inhalt der folgenden Dateitypen kopieren: .sql
und .py
.
Um Änderungen in Ihrem Repository zu speichern, müssen Sie den bearbeiteten Code aus dem Arbeitsblatt in eine Datei (z. B. die Datei, die derjenigen entspricht, aus der Sie kopiert haben) in Ihr lokales Git-Repository kopieren und die Änderungen von dort aus committen.
- Snowsight:
Sie können Snowsight verwenden, um Inhalte aus einer Datei Ihres Repositorys in ein Arbeitsblatt zu kopieren.
Melden Sie sich bei Snowsight an.
Wählen Sie im Navigationsmenü die Option Data » Databases aus.
Wählen Sie im Objekt-Explorer die Datenbank und das Schema aus, die den Git-Repository-Stagingbereich enthalten, das Sie anzeigen möchten.
Öffnen Sie innerhalb des Schemas Git Repositories.
Wählen Sie unter Git Repositories das Repository aus, um die zugehörige Detailseite anzuzeigen.
Wählen Sie auf der Detailseite des Repositorys auf der Registerkarte Files Explorer die Schaltfläche Branch aus.
Wählen Sie im Dropdown-Menü Branch eine der folgenden Optionen aus:
Um eine Liste der aus dem Repository geklonten Zweige anzuzeigen, wählen Sie Branches aus.
Um eine Liste der aus dem Repository geklonten Tags anzuzeigen, wählen Sie Tags aus.
Wählen Sie den Zweig oder das Tag aus, in dem die Datei enthalten ist, deren Code Sie kopieren möchten.
Wählen Sie unterhalb des Repository-Namens den Ordner aus, der die Datei enthält, die Sie ausführen möchten.
Suchen Sie die Datei, deren Code Sie ausführen möchten, und wählen Sie
» Copy into worksheet aus.
Snowflake kopiert den Code aus der von Ihnen ausgewählten Datei in ein neues Arbeitsblatt.