Intégrer des espaces de travail à un référentiel Git

Important

À partir de septembre 2025, Snowflake remplace progressivement les feuilles de calcul par les espaces de travail. Les espaces de travail deviendront l’éditeur SQL par défaut. Pour plus d’informations, voir Par défaut, feuilles de calcul remplacées par les espaces de travail.

Vue d’ensemble

Les espaces de travail peuvent être locaux à Snowflake, mais vous pouvez aussi synchroniser des espaces de travail en développement avec une branche d’un référentiel Git. Dans les espaces de travail, vous pouvez :

Créer un espace de travail Git

Pour développer et gérer des fichiers directement dans l’Snowsight, vous pouvez créer un espace de travail connecté à un référentiel Git.

Note

Un référentiel Git doit contenir au moins une branche ; les référentiels vides ne sont pas pris en charge.

Pour créer un nouvel espace de travail synchronisé avec Git, procédez comme suit :

  1. Connectez-vous à Snowsight.

  2. Dans le menu de navigation, sélectionnez Projects » Workspaces.

  3. Dans le menu Workspaces, sélectionnez From Git repository.

  4. Copiez l’URL de votre référentiel Git (par exemple, https://www.github.com/my-user/my-repo-name), puis collez-la dans le champ Repository URL.

  5. Facultatif : renommez le nouvel espace de travail synchronisé avec Git.

  6. Dans le menu API Integration, sélectionnez une intégration API.

    Les intégrations API sont créées par l’administrateur du compte et doivent permettre l’accès au référentiel Git. URL que vous utilisez à l’étape 4. Pour plus de détails, voir Configuration de Snowflake pour utiliser Git.

    En outre, si vous utilisez GitHub comme fournisseur Git et préférez OAuth pour l’authentification, l’administrateur de compte doit créer une intégration API qui prend en charge OAuth. Par exemple :

    CREATE OR REPLACE API INTEGRATION api_integration_name
       API_PROVIDER = git_https_api
       API_ALLOWED_PREFIXES = ('https://github.com/')
       API_USER_AUTHENTICATION = (
          TYPE = snowflake_github_app
       )
       ENABLED = TRUE;
    
    Copy
  7. Sous API integration, sélectionnez une méthode d’authentification :

    • OAuth2 - Sélectionnez Sign in pour vous authentifier auprès de votre référentiel GitHub. Une fois connecté, vous n’aurez plus besoin de fournir d’identifiants de connexion lors des sessions suivantes. Notez qu’OAuth2 n’est pas disponible pour les environnements PrivateLink.

    • Personal access token - Sélectionnez la base de données et le schéma dans lesquels l’objet contenant votre jeton est stocké. Pour créer un nouveau secret, sélectionnez + Secret et entrez les détails requis. L’intégration API doit être configurée pour autoriser l’accès à ce secret ou à tous les secrets.

    • Public repository - Sélectionnez cette option si vous utilisez un référentiel public qui ne requiert pas d’authentification. Notez qu’il n’est pas possible de valider et de transférer des modifications de votre espace de travail vers ce référentiel public.

  8. Sélectionnez Create.

Mettre à jour les détails et les identifiants de connexion d’un auteur pour une branche

Par défaut, votre adresse e-mail et votre nom d’utilisateur Snowflake sont utilisés pour valider les modifications dans votre référentiel Git. Vous pouvez les mettre à jour à tout moment.

  1. Connectez-vous à Snowsight.

  2. Dans le menu de navigation, sélectionnez Projects » Workspaces.

  3. Sélectionnez l’onglet Changes.

  4. Sélectionnez l’ellipse, puis Edit credentials.

  5. Indiquez le nom et l’adresse e-mail de l’auteur.

  6. Sélectionnez Update.

Créer une nouvelle branche

Vous pouvez créer une nouvelle branche à partir de votre branche actuelle pour travailler sur des modifications de manière indépendante.

  1. Connectez-vous à Snowsight.

  2. Dans le menu de navigation, sélectionnez Projects » Workspaces.

  3. Sélectionnez l’onglet Changes.

  4. Sélectionnez le référentiel dans la liste déroulante.

  5. Sélectionnez + New.

  6. Spécifiez un nouveau nom de branche, puis sélectionnez Create.

Changer de branche

Si vous avez enregistré des modifications non validées, vous devrez choisir comment les traiter avant de changer de branche.

  1. Connectez-vous à Snowsight.

  2. Dans le menu de navigation, sélectionnez Projects » Workspaces.

  3. Dans la vue de l’espace de travail Git, sélectionnez Changes.

  4. Dans le menu de la branche, sélectionnez la branche vers laquelle vous souhaitez basculer.

    Astuce

    Pour filtrer la liste, commencez à saisir un nom de branche.

Récupérer des branches distantes

Si une nouvelle branche a été créée en dehors de Snowsight (par exemple, une branche créée dans votre fournisseur Git), vous pouvez la récupérer dans votre espace de travail synchronisé avec Git en utilisant l’option Fetch All. Cette opération met à jour votre liste de branches distantes disponibles.

  1. Connectez-vous à Snowsight.

  2. Dans le menu de navigation, sélectionnez Projects » Workspaces.

  3. Dans la vue de l’espace de travail Git, sélectionnez Changes.

  4. Sélectionnez la flèche vers le bas à côté du menu Pull, puis sélectionnez Fetch All. Lorsque la récupération est terminée, les branches distantes nouvellement créées apparaissent dans la liste des branches et sont disponibles à l’extraction.

Voir les fichiers mis à jour

Pour afficher tous les fichiers qui ont été ajoutés, supprimés ou modifiés depuis votre dernière validation et votre dernier push réussis, procédez comme suit :

  1. Connectez-vous à Snowsight.

  2. Dans le menu de navigation, sélectionnez Projects » Workspaces.

  3. En haut de la vue des dossiers, sélectionnez Changes. Les fichiers modifiés sont signalés par un M, les fichiers ajoutés par un A, et les fichiers supprimés par un D.

  4. Pour voir un diff visuel des modifications dans l’éditeur, sélectionnez un fichier.

Valider et transférer des mises à jour

Après avoir examiné vos modifications, vous pouvez les valider et les transférer vers votre référentiel Git distant depuis l’espace de travail.

Pour valider et pousser vos fichiers mis à jour vers le référentiel Git distant, procédez comme suit :

  1. Connectez-vous à Snowsight.

  2. Dans le menu de navigation, sélectionnez Projects » Workspaces.

  3. Sélectionnez Changes en haut de la vue des dossiers.

  4. Rédigez un message de validation dans le champ Commit message.

  5. Sélectionnez Push.

  6. Rédigez un message de validation et sélectionnez Push pour publier vos mises à jour dans le référentiel Git.

    Note

    Si des conflits sont détectés, vous êtes invité à faire un pull d’abord. Sélectionnez Pull pour consulter la liste des fichiers en conflit.

Voir et résoudre les conflits

Si un conflit survient au cours d’un envoi, vous pouvez le voir et le résoudre directement dans l’espace de travail avant d’effectuer un nouvel envoi.

  1. Dans Workspaces, en haut de la vue des dossiers, sélectionnez Changes. Si un ou plusieurs fichiers sont en conflit, un message s’affiche en haut de la vue. Les fichiers présentant un conflit sont signalés par un M rouge.

  2. Pour voir un diff visuel du conflit dans l’éditeur, sélectionnez un fichier. Sous File with conflicts, les différences sont mises en évidence en ligne.

  3. Acceptez le changement en cours, un changement à venir ou les deux changements. Le résultat de la fusion est affiché.

  4. Sous Diff View, vous pouvez voir côte à côte la version actuelle et la version distante.

  5. Sélectionnez Accept all current ou Accept all remote.

  6. Après avoir résolu les conflits, sélectionnez Push.

  7. Rédigez un message de validation.

  8. Sélectionnez Push.