Verwenden eines Git-Repositorys in Snowflake

Sie können Ihr externes Git-Repository mit Snowflake integrieren, sodass Dateien aus dem externen Repository mit einem lokalen Klon des Repositorys in Snowflake synchronisiert werden. Der Git-Repository-Klon in Snowflake fungiert als lokales Git-Repository mit einem vollständigen Klon des externen Repositorys, einschließlich Zweigen, Tags und Commits.

Nachdem Sie den Git-Repository-Klon erstellt haben, können Sie im Snowflake-Code auf die Repository-Dateien des Klons in Snowflake verweisen. Wenn Sie beispielsweise eine gespeicherte Prozedur erstellen, können Sie eine Datei aus dem Git-Repository-Klon importieren und sie als Handler für die Prozedur verwenden.

Mit einem Git-Repository-Klon in Snowflake können Sie Folgendes tun:

  • Dateien aus Ihrem externen Git-Repository in den Klon zur Verwendung in Snowflake-Anwendungen abrufen.

    Die Dateien im Git-Repository-Klon stellen einen vollständigen Klon des Repositorys dar, den Sie aktualisieren können, wenn sich das externe Repository ändert.

  • Interagieren Sie mit dem Git-Repository-Klon, indem Sie Informationen über Zweige und Tags anzeigen.

  • Commit und Push der Änderungen in das externe Repository.

    Das Schreiben in das externe Repository wird nur von den folgenden Snowflake Features unterstützt:

  • Importieren Sie aus einem Git-Repository-Klon, der von Ihrem externen Repository synchronisiert wurde, Dateien in den Code, den Sie in Snowflake ausführen.

    Sie können z. B. Prozeduren und benutzerdefinierte Funktionen (UDFs) schreiben, deren Handler-Code vom Git-Repository-Klon gehalten wird, der mit dem Repository synchronisiert wird.

  • In Snowflake können Sie Dateien aus einem beliebigen Zweig, Tag oder Commit verwenden.

So funktioniert Snowflake mit einem externen Git-Repository

Wenn ein externes Git-Repository in Ihr Snowflake-Konto integriert ist, synchronisieren Sie Dateien aus dem externen Repository mit einem Git-Repository-Klon in Snowflake. Um auf eine Datei in Snowflake zuzugreifen, verweisen Sie auf sie im Git-Repository-Klon. Weitere Informationen zur Verwendung von Repository-Dateien finden Sie unter Git-Repository-Datei als Handler in gespeicherter Prozedur verwenden.

Abbildung eines Git-Repositorys, das Dateien mit Entwicklungstools und Snowflake austauscht.

Snowflake Git-Repository-Klon

Ein Git-Repository-Klon in Snowflake ist ein vollständiger Klon mit allen Zweigen, Tags und Commits des externen Repositorys.

Nachdem sich die Inhalte des externen Repositorys im Git-Repository-Klon befinden, können Sie dort auf Dateien verweisen wie auf eine Datei im Stagingbereich. Sie können GET-Befehle gegen einen Git-Repository-Klon ausführen.

Sie können in einem lokalen Repository ähnliche Operationen ausführen wie mit Git-Befehlen, einschließlich:

Ein Git-Repository-Klon in Snowflake enthält zusätzliche Eigenschaften, die für die Integration des externen Repositorys in Snowflake spezifisch sind. Dazu zählen folgende Eigenschaften:

  • Die Ursprungs-URL des externen Git-Repositorys

  • Ein Geheimnis (falls erforderlich), das Anmeldeinformationen für die Authentifizierung beim externen Repository enthält

  • Eine Snowflake API-Integration, die festlegt, wie Snowflake mit der Git-API interagieren soll.

Weitere Informationen dazu finden Sie unter Eigenschaften eines Git-Repository-Klons anzeigen.

Git-Repository und Entwicklungstools

Nachdem Sie Ihr externes Repository in Snowflake integriert haben, können Sie Ihre Entwicklungstools und Ihr lokales Repository weiter wie bisher verwenden. Durch den Git-Repository-Klon wird Snowflake zu einem weiteren Client Ihres Repositorys, unabhängig von Ihrem lokalen Repository.

Unterstützte Plattformen

Sie können derzeit Git-Repositorys integrieren, welche die folgenden Git-Plattformen verwenden. Dazu gehören Repositorys, die auf diesen Plattformen basieren, aber unter benutzerdefinierten URLs verfügbar sind. Ein Repository, das auf GitHub basiert, muss zum Beispiel nicht auf github.com liegen.

  • GitHub

  • GitLab

  • BitBucket

  • Azure DevOps

  • AWS CodeCommit

Referenzen