Git-Operationen in Snowflake¶
Unter diesem Thema wird beschrieben, wie Sie gängige Repository-Operationen mithilfe von SQL-Befehlen und Snowsight ausführen.
Sie können mit Git auch die folgenden Programme verwenden, von denen jedes seine eigene Methode zur Durchführung von Git-Operationen enthält.
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.
Aktualisieren Sie einen Git-Repository-Klon aus dem Repository¶
Sie können den Git-Repository-Klon in Snowflake 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 Ihren Git-Repository-Klon entweder mit Snowsight oder SQL aktualisieren.
Wenn Sie Ihren Git-Repository-Klon aktualisieren möchten, können Sie mit dem Befehl ALTER GIT REPOSITORY den Inhalt des externen Git-Repositorys in den Git-Repository-Klon in Snowflake abrufen.
Der Code im folgenden Beispiel aktualisiert den Git-Repository-Klon mit dem Inhalt des Repositorys:
ALTER GIT REPOSITORY snowflake_extensions FETCH;
Sie können Snowsight verwenden, um den Git-Repository-Klo aus 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-Klon enthalten, den 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, um den Git-Repository-Klon 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 in den folgenden Formen verwenden, wobei Sie den Git-Repository-Klon wie einen Stagingbereich angeben (Sie können LIST zu LS abkürzen):
Liste nach Zweigname:
LS @repository_name/branches/branch_name;
Liste nach Tag-Name:
LS @repository_name/tags/tag_name;
Liste nach Commit-Hash:
LS @repository_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-Klon enthalten, den Sie ansehen 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 eines Git-Repository-Klons anzeigen¶
Sie können die mit einem Git-Repository-Klon verbundenen Eigenschaften in Snowflake 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 von Git-Repository-Klonen entweder mit Snowsight oder SQL anzeigen.
Sie können die Eigenschaften von Git-Repository-Klonen 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-Klon enthalten, den Sie ansehen 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 Git-Repository-Klon
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 Git-Repository-Klon auszuführen.
Der Code im folgenden Beispiel führt den Code in create-database.sql
aus dem Git-Repository-Klon 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-Klon enthalten, den Sie ansehen 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-Klon enthalten, den Sie ansehen 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.