Opérations Git dans Snowflake¶
Cette rubrique décrit comment effectuer des opérations courantes sur le référentiel.
Intégrer un référentiel Git à votre compte Snowflake¶
Pour obtenir des informations sur la mise en place d’une intégration avec un référentiel Git, consultez Configuration de Snowflake pour utiliser Git.
Actualiser une zone de préparation à partir du référentiel¶
Vous pouvez actualiser la zone de préparation avec un clone complet qui récupère toutes les branches, les balises et les validations du référentiel distant. Lorsque vous faites cela, vous enlevez également les branches et les validations qui ont été récupérées précédemment mais qui n’existent plus dans le référentiel distant.
Pour effectuer les opérations décrites dans cette section, vous aurez besoin de l’accès Snowflake décrit dans Contrôle d’accès pour ALTER GIT REPOSITORY.
Vous pouvez actualiser votre zone de préparation de référentiel en utilisant Snowsight ou SQL.
Lorsque vous souhaitez actualiser votre zone de préparation de référentiel, vous pouvez récupérer le contenu du référentiel Git intégré dans la zone de préparation de référentiel à l’aide de la commande ALTER GIT REPOSITORY.
Le code de l’exemple suivant met à jour la zone de préparation du référentiel avec le contenu du référentiel :
ALTER GIT REPOSITORY snowflake_extensions FETCH;
Vous pouvez utiliser Snowsight pour actualiser la zone de préparation du référentiel (qui contient un clone du référentiel distant) à partir du référentiel distant.
Connectez-vous à Snowsight.
Dans le menu de navigation, sélectionnez Data » Databases.
Dans l’explorateur d’objets, sélectionnez la base de données et le schéma qui contiennent la zone de préparation du référentiel Git que vous souhaitez actualiser.
Dans le schéma, ouvrez Git Repositories.
Dans Git Repositories, sélectionnez le référentiel pour voir la page de détails.
Dans les détails du référentiel, sur l’onglet Files Explorer, sélectionnez le bouton Fetch pour actualiser la zone de préparation du référentiel.
Voir une liste des fichiers du référentiel¶
Vous pouvez voir la liste des fichiers d’une branche, d’une balise ou d’une validation en utilisant Snowsight ou SQL.
Vous pouvez voir une liste des fichiers du référentiel en utilisant la commande LIST sous les formes suivantes (vous pouvez abréger LIST en LS) :
Affichage par nom de branche :
LS @repository_stage_name/branches/branch_name;
Affichage par nom de balise :
LS @repository_stage_name/tags/tag_name;
Affichage par hash de validation :
LS @repository_stage_name/commits/commit_hash;
L’exemple suivant génère une sortie qui affiche les fichiers de la branche principale du référentiel Git snowflake_extensions
:
LS @snowflake_extensions/branches/main;
La commande précédente génère une sortie similaire à la suivante :
-------------------------------------------------------------------------------------------------------------------------------------------------------
| 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 |
-------------------------------------------------------------------------------------------------------------------------------------------------------
Vous pouvez utiliser Snowsight pour voir une liste des branches et des balises dans votre référentiel Git.
Connectez-vous à Snowsight.
Dans le menu de navigation, sélectionnez Data » Databases.
Dans l’explorateur d’objets, sélectionnez la base de données et le schéma qui contiennent la zone de préparation du référentiel Git que vous souhaitez voir.
Dans le schéma, ouvrez Git Repositories.
Dans Git Repositories, sélectionnez un référentiel pour voir sa page de détails.
Dans la page de détails du référentiel, dans l’onglet Files Explorer, sélectionnez le bouton Branch.
Dans le menu déroulant Branch, sélectionnez l’une des options suivantes :
Pour voir la liste des branches clonées à partir du référentiel, sélectionnez Branches.
Pour voir la liste des balises clonées à partir du référentiel, sélectionnez Tags.
Sélectionnez la branche ou la balise dont vous souhaitez afficher les fichiers.
Sous le nom du référentiel, affichez la liste des dossiers et des fichiers correspondant à la sélection que vous avez effectuée.
Vue des propriétés de la zone de préparation du référentiel¶
Vous pouvez voir les propriétés associées à une zone de préparation de référentiel.
Pour effectuer les opérations décrites dans cette section, vous aurez besoin de l’accès Snowflake décrit dans Contrôle d’accès pour DESC GIT REPOSITORY.
Vous pouvez voir les propriétés des zones de préparation de référentiel en utilisant Snowsight ou SQL.
Vous pouvez voir les propriétés des zones de préparation du référentiel en utilisant les commandes SQL SHOW GIT REPOSITORIES et DESCRIBE GIT REPOSITORY.
Les informations sur les propriétés comprennent l’URL Git d’origine, le nom de l’intégration de l’API et ses identifiants de connexion (spécifiés sous la forme d’un secret) utilisées pour se connecter au référentiel distant, etc.
DESCRIBE GIT REPOSITORY snowflake_extensions;
La commande précédente génère une sortie similaire à la suivante :
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
| 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 | |
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Vous pouvez utiliser Snowsight pour voir les propriétés du référentiel.
Connectez-vous à Snowsight.
Dans le menu de navigation, sélectionnez Data » Databases.
Dans l’explorateur d’objets, sélectionnez la base de données et le schéma qui contiennent la zone de préparation du référentiel Git que vous souhaitez voir.
Dans le schéma, ouvrez Git Repositories.
Dans Git Repositories, sélectionnez un référentiel pour voir sa page de détails.
Dans la page de détails du référentiel, sélectionnez l’onglet Git Repository Details pour voir les informations suivantes qui incluent ce qui suit :
L’origine du référentiel
L”intégration de l’API et les identifiants de connexion (spécifiés sous la forme d’un secret) utilisés par Snowflake pour interagir avec le référentiel distant
Les privilèges accordés sur la zone de préparation du référentiel
Exécuter du code à partir d’un référentiel¶
Vous pouvez exécuter le code contenu dans un fichier du référentiel.
Pour effectuer les opérations décrites dans cette section, vous aurez besoin de l’accès Snowflake décrit dans Contrôle d’accès pour EXECUTE IMMEDIATE FROM.
Vous pouvez exécuter le code en utilisant Snowsight ou SQL.
Vous pouvez utiliser EXECUTE IMMEDIATE FROM pour exécuter du code dans une zone de préparation de référentiel.
Le code de l’exemple suivant exécute le code de create-database.sql
à partir de la zone de préparation du référentiel snowflake_extensions
:
EXECUTE IMMEDIATE FROM @snowflake_extensions/branches/main/sql/create-database.sql;
Vous pouvez utiliser Snowsight pour exécuter du code SQL à partir d’un référentiel Git.
Notez que lorsque vous exécutez du code de cette manière, vous ne verrez pas la sortie générée par l’exécution du code.
Connectez-vous à Snowsight.
Dans le menu de navigation, sélectionnez Data » Databases.
Dans l’explorateur d’objets, sélectionnez la base de données et le schéma qui contiennent la zone de préparation du référentiel Git que vous souhaitez voir.
Dans le schéma, ouvrez Git Repositories.
Dans Git Repositories, sélectionnez un référentiel pour voir sa page de détails.
Dans la page de détails du référentiel, dans l’onglet Files Explorer, sélectionnez le bouton Branch.
Dans le menu déroulant Branch, sélectionnez l’une des options suivantes :
Branches pour voir la liste des branches clonées à partir du référentiel.
Tags pour voir la liste des balises clonées à partir du référentiel.
Sélectionnez la branche ou la balise contenant le fichier dont vous voulez exécuter le code.
Sous le nom du référentiel, sélectionnez le dossier contenant le fichier à exécuter.
Localisez le fichier dont vous voulez exécuter le code et sélectionnez
» Execute immediate.
Dans la zone qui s’affiche, examinez le code contenu dans le fichier.
Il s’agit du code que Snowflake exécutera.
Pour exécuter le code affiché, sélectionnez Execute Immediate.
La page de détails affiche une notification indiquant que l’exécution du code a été lancée. Elle indique ensuite si l’exécution a réussi ou échoué.
Copier le code du référentiel dans une feuille de calcul¶
Vous pouvez rapidement copier le code d’un fichier du référentiel dans une feuille de calcul. Vous pouvez modifier et exécuter le code copié ou l’utiliser comme modèle en lecture seule pour d’autres utilisateurs.
Vous pouvez copier le contenu des types de fichiers suivants : .sql
et .py
.
Pour enregistrer vos modifications dans votre référentiel, vous devez copier le code modifié de la feuille de calcul dans un fichier (tel que le fichier correspondant à celui que vous avez copié) dans votre référentiel Git local et valider les modifications à partir de là.
- Snowsight:
Vous pouvez utiliser Snowsight pour copier le contenu d’un fichier de votre référentiel dans une feuille de calcul.
Connectez-vous à Snowsight.
Dans le menu de navigation, sélectionnez Data » Databases.
Dans l’explorateur d’objets, sélectionnez la base de données et le schéma qui contiennent la zone de préparation du référentiel Git que vous souhaitez voir.
Dans le schéma, ouvrez Git Repositories.
Dans Git Repositories, sélectionnez un référentiel pour voir sa page de détails.
Dans la page de détails du référentiel, dans l’onglet Files Explorer, sélectionnez le bouton Branch.
Dans le menu déroulant Branch, effectuez l’une des opérations suivantes :
Pour voir la liste des branches clonées à partir du référentiel, sélectionnez Branches.
Pour voir la liste des balises clonées à partir du référentiel, sélectionnez Tags.
Sélectionnez la branche ou la balise contenant le fichier dont vous souhaitez copier le code.
Sous le nom du référentiel, sélectionnez le dossier contenant le fichier à exécuter.
Localisez le fichier dont vous voulez exécuter le code et sélectionnez
» Copy into worksheet.
Snowflake copie le code du fichier que vous avez sélectionné dans une nouvelle feuille de calcul.