Utiliser le contrôle des versions et déployer

Dans cette page, nous partons du principe que le contrôle des versions a déjà été configuré pour votre projet. Si un bouton Configurer Git s'affiche à la place des options décrites sur cette page, vous devez d'abord configurer Git pour votre projet.

Looker utilise Git pour enregistrer les modifications et gérer les versions des fichiers. Chaque projet LookML correspond à un dépôt Git, et chaque branche de développeur correspond à une branche Git.

Looker peut être configuré pour fonctionner avec de nombreux fournisseurs Git, tels que GitHub, GitLab et Bitbucket. Consultez la page de documentation Configurer et tester une connexion Git afin d'en savoir plus sur la configuration de Git pour votre projet Looker.

Utiliser des branches Git

L'un des principaux avantages de Git est qu'un développeur Looker peut travailler dans une branche, une version isolée d'un dépôt de fichiers. Vous pouvez développer et tester votre application sans affecter les autres utilisateurs. En tant que développeur dans Looker, vous utilisez une branche Git chaque fois que vous êtes en mode Développement.

Une autre caractéristique majeure de Git est la facilité de collaboration avec d'autres développeurs. Vous pouvez créer une branche et, si vous le souhaitez, y apporter des modifications. Les autres développeurs peuvent alors passer à cette branche pour examiner ou modifier la branche. Si un autre développeur a validé les modifications apportées à la branche, Looker affiche le bouton Extraire les modifications à distance. Vous devez récupérer ces modifications dans la branche avant d'apporter d'autres modifications.

Vous pouvez également supprimer une branche autre que la branche principale, votre branche actuelle ou la branche personnelle d'un développeur.

Branches personnelles

Lorsque vous passez pour la première fois en mode Développement, Looker crée automatiquement votre branche Git personnelle. Votre branche personnelle commence par dev- et inclut votre nom.

Votre branche personnelle vous est propre et ne peut pas être supprimée. Votre branche personnelle est en lecture seule pour tous les autres développeurs. Si vous collaborez avec d'autres développeurs sur un projet, vous pouvez créer une branche afin que les autres puissent y passer et apporter également des modifications.

Créer une branche Git

Si vous travaillez sur un correctif simple et que vous ne collaborez pas avec d'autres développeurs, votre branche personnelle est généralement un bon endroit pour travailler. Vous pouvez utiliser votre branche personnelle pour effectuer des mises à jour rapides, puis les valider et les déployer en production.

Cependant, vous pouvez également créer des branches Git en plus de votre branche personnelle. Une nouvelle branche Git est logique dans les situations suivantes:

  • Vous travaillez avec d'autres développeurs. Étant donné que votre branche personnelle est en lecture seule pour les autres développeurs, si vous souhaitez collaborer avec d'autres personnes, vous devez créer une branche Git afin que les autres développeurs puissent y écrire. Lorsque vous collaborez avec d'autres personnes, veillez à extraire les modifications chaque fois que vous reprenez votre travail. Ainsi, vous disposerez des dernières mises à jour de tous les développeurs avant de continuer à travailler.
  • Vous travaillez sur plusieurs ensembles de fonctionnalités à la fois. Il peut arriver que vous soyez en plein milieu d'un projet important, mais que vous souhaitiez résoudre un problème mineur ou apporter une correction rapide. Dans ce cas, vous pouvez effectuer un commit de vos modifications dans la branche sur laquelle vous vous trouvez, puis créer ou basculer vers une autre branche pour travailler sur un ensemble de fonctionnalités distinct. Vous pouvez apporter votre correction dans la nouvelle branche, puis déployer les modifications de cette branche en production avant de reprendre le travail dans votre branche d'origine.

Avant de créer une branche :

  • Si vous rencontrez un conflit de fusion sur votre branche actuelle, vous devez le résoudre avant de pouvoir créer une nouvelle branche.
  • Si vous avez des modifications non validées sur la branche actuelle, vous devez les valider sur votre branche actuelle avant de créer une nouvelle branche.
  • Si vous souhaitez créer une branche à partir d'une branche de développement existante (et non à partir de la branche de production), obtenez d'abord la dernière version de la branche de développement en basculant vers cette branche de développement, puis récupérez les modifications distantes pour synchroniser votre version locale de cette branche.

Pour créer une branche Git :

  1. Vérifiez que le mode Développement est activé.
  2. Accédez aux fichiers de votre projet dans le menu Develop (Développer).

  3. Sélectionnez l'icône Git dans le menu des icônes situé à gauche pour ouvrir le panneau Git Actions (Actions Git).

  4. Sélectionnez le menu déroulant Afficher les branches.

  5. Sélectionnez Nouvelle branche.

  6. Dans la fenêtre Nouvelle branche, saisissez le nom de votre branche. Notez qu'il existe des limites pour les noms de branche Git. Pour connaître les règles de dénomination, consultez la section Règles de dénomination d'une branche Git sur cette page.

  7. Sélectionnez le menu déroulant Create From (Créer à partir de), puis sélectionnez une branche existante à utiliser comme point de départ de votre nouvelle branche.

  8. Sélectionnez Create (Créer) pour créer votre branche.

Vous pouvez également créer des branches Git dans l'onglet Gestion des branches des paramètres du projet.

Règles de dénomination d'une branche Git

Looker utilise les exigences de convention d'attribution de noms de branches spécifiées par Git.

Les noms des branches Git ne doivent pas:

  • contenir un espace.
  • Contenir une double période : ..
  • Contient une barre oblique inverse : \
  • Contenir la séquence: @{
  • contenir un point d'interrogation : ? ;
  • Contenir un crochet ouvrant : [
  • Contenir un caractère de contrôle ASCII: ~, \^ ou :
  • Commencer par une période: .
  • Commencer par le préfixe : dev- (réservé aux branches personnelles des développeurs Looker)
  • Se terminer par une barre oblique: /
  • Se terminer par l'extension : .lock

De plus, le nom de la branche ne peut contenir un astérisque (*) que s'il représente un composant de chemin complet (par exemple, foo/* ou bar/*/baz). Dans ce cas, il est interprété comme un caractère générique et non comme faisant partie du nom de branche réel.

Passer à une autre branche Git

En cas de conflit de fusion sur votre branche actuelle, vous devez le résoudre avant de pouvoir changer de branche.

De plus, si vous avez des modifications non validées sur votre branche actuelle, vous ne pouvez pas basculer vers une branche existante tant que vous n'avez pas validé les modifications sur votre branche actuelle.

Pour changer de branche Git, procédez comme suit:

  1. Dans le projet, accédez au panneau Git Actions (Actions Git) en sélectionnant l'icône Git dans le menu des icônes de gauche.
  2. Dans le panneau Git Actions (Actions Git), sélectionnez le menu déroulant de la branche Git, à droite du nom actuel de votre branche Git.
  3. Sélectionnez la branche à laquelle vous souhaitez accéder dans le menu ou saisissez son nom dans le champ de recherche. La recherche par nom de branche n'est pas sensible à la casse. Par exemple, vous pouvez rechercher "DEV" et afficher toutes les branches dont le nom inclut "dev", "DEV", "Dev", etc.

Gérer les branches Git

L'onglet Gestion des branches des paramètres du projet affiche un tableau de toutes les branches Git du projet Looker. Pour ouvrir l'onglet Gestion des branches, accédez d'abord aux paramètres du projet en sélectionnant l'icône Paramètres dans le menu des icônes de gauche. Sélectionnez ensuite l'onglet Gestion des succursales.

Dans l'onglet Gestion des succursales, vous pouvez :

  1. Créez une branche en sélectionnant le bouton Nouvelle branche. Pour en savoir plus, consultez la section Créer une branche Git de cette page.
  2. Saisissez le nom des branches dans la barre de recherche.
  3. Actualisez la table en sélectionnant le bouton Actualiser.
  4. Triez le tableau en sélectionnant un nom de colonne.

Le tableau comprend les informations suivantes :

  • Name (Nom) : nom de la branche Git. Développeurs Looker branches personnelles commencent par dev- et incluent le prénom et le nom du développeur.
  • État : différence entre votre version locale de la branche et la version distante de la branche. Par exemple, un état 3 commits behind signifie que votre version locale de la branche est en retard de trois commits par rapport à la version distante de la branche. Comme Looker utilise toujours la version distante du maître, l'onglet Gestion des branches n'affiche pas l'état de la version locale de la branche maître. La branche principale peut toujours être considérée comme à jour.
  • Dernière mise à jour: temps écoulé depuis qu'un développeur Looker a effectué un commit pour la branche.
  • Actions : bouton permettant de supprimer la branche ou raison pour laquelle la branche ne peut pas être supprimée.

Supprimer des branches Git

Dans l'onglet Gestion des branches, vous pouvez supprimer les branches pour lesquelles un bouton Supprimer s'affiche dans le tableau. Vous ne pouvez pas supprimer les branches suivantes:

Dans le tableau, ces branches ne comportent pas de bouton Supprimer. La colonne Action du tableau indique la raison pour laquelle la branche ne peut pas être supprimée.

Vous ne pouvez pas restaurer une branche une fois qu'elle a été supprimée. Lorsque vous supprimez une branche, Looker supprime à la fois la version locale et la version distante de la branche.

Toutefois, si la branche a été créée par un autre développeur Looker, ou si d'autres développeurs ont vérifié la branche, ces développeurs disposeront toujours de leur version locale de la branche. Si un développeur Looker effectue des commits sur sa version locale de la branche et la fait passer en production, vous verrez à nouveau une version distante de la branche. Cela peut être utile si vous voulez restaurer la branche. Sinon, lorsque vous supprimez une branche, tous les autres développeurs Looker doivent supprimer la même branche pour s'assurer qu'elle ne peut pas être accidentellement réapparue par quelqu'un qui la pousse vers un dépôt distant.

Pour supprimer une ou plusieurs branches Git de votre projet, accédez d'abord aux paramètres du projet en sélectionnant l'icône Settings (Paramètres) dans le menu de l'icône de gauche. Sélectionnez ensuite l'onglet Branch Management (Gestion des branches). Dans l'onglet Gestion des branches, vous pouvez supprimer des branches de deux manières:

  1. Pour supprimer plusieurs branches, cochez d'abord les cases à cocher correspondantes, puis sélectionnez Delete Selected Branches (Supprimer les branches sélectionnées).
  2. Pour supprimer une seule branche, sélectionnez Supprimer à côté de son nom.

Exécuter des commandes Git dans Looker

Looker dispose d'une interface intégrée qui s'intègre à votre service Git. Looker affiche le bouton Git en haut à droite de l'IDE LookML.

Le bouton Git affiche différentes options en fonction de l'étape à laquelle vous vous trouvez dans le processus de modification et de déploiement en production. En règle générale, l'option affichée sur le bouton est la meilleure indication pour votre prochaine action.

Si votre branche de développement est synchronisée avec la branche de production, le bouton Git affiche le message À jour et n'est pas sélectionnable.

Une fois votre projet configuré pour Git, vous pouvez sélectionner le bouton Git Actions (Actions Git) pour ouvrir le panneau Git Actions (Actions Git).

Les commandes disponibles dans le panneau Actions Git dépendent de l'étape à laquelle vous vous trouvez dans le processus de modification et de déploiement en production.

Déployer vos modifications en production

Avec l'intégration Git par défaut de Looker, Looker invite les développeurs à passer par le workflow Git suivant:

Cela signifie que, avec l'intégration Git par défaut, tous les développeurs fusionnent leurs modifications dans une branche appelée master, et que le dernier commit de la branche master est utilisé pour l'environnement de production de Looker.

Pour les implémentations Git avancées, vous pouvez personnaliser ce workflow :

  • Vous pouvez demander à vos développeurs d'envoyer des demandes d'extraction pour votre branche de production Git, au lieu de leur permettre de fusionner leurs modifications via l'IDE Looker. Pour en savoir plus, consultez la page Configurer les paramètres de contrôle des versions d'un projet.
  • Vous pouvez utiliser le champ Nom de la branche de production Git pour indiquer la branche de votre dépôt Git que Looker doit utiliser comme branche cible dans laquelle les données les branches sont fusionnées. Pour en savoir plus, consultez la page de documentation Configurer les paramètres de contrôle des versions du projet.
  • Vous pouvez utiliser le mode de déploiement avancé pour spécifier un autre SHA de commit ou un autre nom de balise à déployer dans votre environnement de production Looker, au lieu d'utiliser le dernier commit de la branche de production. (Si vous souhaitez déployer un commit à partir d'une autre branche, vous pouvez utiliser le webhook ou le point de terminaison de l'API en mode de déploiement avancé.) Pour en savoir plus, consultez la page de documentation Mode de déploiement avancé.

Si un bouton Configurer Git s'affiche au lieu des options décrites dans cette section, vous devez d'abord configurer Git pour votre projet.

Afficher les modifications non validées

L'IDE LookML affiche plusieurs indicateurs lorsque vous êtes en mode développement et que vous avez des modifications non validées, comme décrit dans la section Marquer les ajouts, les modifications et les suppressions de la page de documentation Présentation de l'IDE Looker.

Vous pouvez obtenir un résumé des différences pour tous les fichiers en sélectionnant l'option View Uncommitted Changes (Afficher les modifications non validées) dans le panneau Git Actions (Actions Git).

Dans la fenêtre Modifications non validées du projet, Looker affiche un récapitulatif de toutes les modifications enregistrées et non validées dans tous les fichiers du projet. Pour chaque modification, Looker affiche les éléments suivants :

  • Nom du fichier remplacé et nom du fichier ajouté.
    • Nom du fichier remplacé (indiqué par ---) et nom du fichier ajouté (indiqué par +++). Dans de nombreux cas, il peut s'agir de différentes versions du même fichier, avec des révisions identifiées par --- a/ et +++ b/.
    • Les fichiers supprimés sont affichés comme remplaçant un fichier nul (+++ /dev/null).
    • Les fichiers ajoutés sont affichés comme remplaçant un fichier nul (--- /dev/null).
  • Numéro de la ligne où la modification commence.

    Par exemple, -101,4 +101,4 indique que quatre lignes ont été supprimées et quatre lignes ont été ajoutées à la 101e ligne du fichier. Dans un fichier supprimé de 20 lignes, -1,20 +0,0 serait affiché pour indiquer que sur la première ligne du fichier, 20 lignes ont été supprimées et remplacées par des zéros.
  • Texte mis à jour :
    • Les lignes supprimées s'affichent en rouge.
    • Les lignes ajoutées s'affichent en vert.

Pour afficher un récapitulatif des différences pour un seul fichier, sélectionnez l'option Afficher les modifications dans le menu du fichier.

Valider des modifications

Une fois que vous avez apporté des modifications à votre projet LookML et que vous les avez enregistrées, l'IDE peut vous demander de valider votre code LookML. Le bouton Git affiche le texte Valider LookML dans ce scénario.

Cette opération est obligatoire ou non en fonction du paramètre de qualité du code de votre projet. Pour en savoir plus sur le validateur de contenu, consultez la page de documentation Valider votre code LookML.

Si un autre développeur a apporté des modifications à la branche de production depuis la dernière mise à jour de votre branche locale, Looker vous demande de récupérer ces mises à jour à partir de la branche de production. Dans ce scénario, le bouton Git affiche le texte Pull from Production (Extraire de la production).

Si le mode de déploiement avancé est activé pour votre projet, le bouton Git affiche à la place le texte Extraire de la branche principale.

Une fois que vous avez enregistré vos modifications (et corrigé les avertissements ou erreurs LookML, le cas échéant) et extrait de la production (le cas échéant), le bouton Git affiche le texte Commit Changes & Push (Effectuer le commit des modifications et les transférer).

Si vous le souhaitez, vous pouvez d'abord examiner vos modifications non validées avant de les valider.

Lorsque vous êtes prêt à valider les modifications, utilisez le bouton Git pour les valider dans votre branche actuelle. Looker affiche la boîte de dialogue Commit (Enregistrer), qui liste les fichiers ajoutés, modifiés ou supprimés.

Saisissez un message décrivant brièvement vos modifications, puis décochez les cases correspondant aux fichiers que vous ne souhaitez pas inclure dans la synchronisation. Sélectionnez ensuite Commit (Valider) pour valider les modifications.

Recherche de tables PDT déconstruites

Si vous avez apporté des modifications à des tables PDT de votre projet, il est préférable que toutes vos tables PDT soient générées lors du déploiement en production afin qu'elles puissent être utilisées immédiatement comme versions de production. Pour vérifier l'état des PDT dans le projet, sélectionnez l'icône État du projet pour ouvrir le panneau État du projet, puis le bouton Valider l'état des PDT.

Consultez la page de documentation Tables dérivées dans Looker pour en savoir plus sur la vérification des tables PDT non compilées dans votre projet LookML et sur l'utilisation de tables dérivées en mode Développement.

Exécuter des tests de données

Votre projet peut inclure un ou plusieurs paramètres test qui définissent des tests de données pour vérifier la logique de votre modèle LookML. Consultez la page de documentation du paramètre test pour savoir comment configurer des tests de données dans votre projet.

Si votre projet contient des tests de données et que vous êtes en mode Développement, vous pouvez lancer les tests de données de votre projet de plusieurs manières:

  1. Si les paramètres de votre projet sont configurés pour exiger la réussite des tests de données avant le déploiement de vos fichiers en production, l'IDE affiche le bouton Run Tests (Exécuter les tests) une fois que vous avez validé les modifications apportées au projet afin d'exécuter tous les tests de votre projet, quel que soit le fichier définissant le test. Vous devez réussir les tests de données avant de pouvoir déployer vos modifications en production.
  2. Sélectionnez le bouton Run Data Tests (Exécuter les tests de données) dans le panneau Project Health (État du projet). Looker exécute tous les tests de données de votre projet, quel que soit le fichier qui les définit.
  3. Sélectionnez l'option Exécuter les tests LookML dans le menu du fichier. Looker n'exécute que les tests définis dans le fichier actuel.

Une fois les tests de données exécutés, le panneau État du projet affiche la progression et les résultats.

  • Un test de données est concluant lorsque l'assertion du test est vraie pour chaque ligne de la requête du test. Consultez la page de documentation du paramètre test pour en savoir plus sur la configuration des assertions et des requêtes de test.
  • Si un test de données échoue, le panneau État du projet vous indique pourquoi le test a échoué, s'il a détecté des erreurs dans la logique de votre modèle ou si c'est le test lui-même qui n'était pas valide.
  • Dans les résultats du test de données, vous pouvez sélectionner le nom d'un test de données pour accéder directement au code LookML correspondant, ou cliquer sur le bouton Explorer la requête pour ouvrir une exploration avec la requête définie dans le test de données.

Déployer en production

Une fois les modifications validées dans votre branche, l'IDE Looker vous invite à fusionner vos modifications dans la branche principale. Le type d'invite affiché dans l'IDE dépend de la configuration de votre projet :

  • Si votre projet est configuré pour le mode de déploiement avancé, l'IDE vous invite à fusionner vos modifications dans la branche principale. Une fois votre commit fusionné, un développeur Looker disposant de l'autorisation deploy peut le déployer en production à l'aide du gestionnaire de déploiement de l'IDE Looker, ou à l'aide d'un webhook ou d'un point de terminaison d'API.
  • Si votre projet est configuré pour l'intégration Git à l'aide de demandes d'extraction, vous êtes invité à en ouvrir une à l'aide de l'interface de votre fournisseur Git.
  • Sinon, avec l'intégration Git de Looker par défaut, si vous disposez de l'autorisation deploy, l'IDE Looker vous invitera à fusionner vos modifications avec la branche de production et à les déployer dans la version de production de votre instance Looker.

Mode Déploiement avancé

Avec l'intégration Git par défaut de Looker, les développeurs Looker valident leurs modifications dans leur branche de développement, puis fusionnent leur branche de développement avec la branche de production. Ensuite, lorsque vous déployez dans l'environnement Looker, Looker utilise le dernier commit de la branche de production. (Consultez la section Mettre vos modifications en production de cette page pour connaître le workflow Git par défaut et d'autres options pour les implémentations Git avancées.)

Si vous ne souhaitez pas toujours utiliser le dernier commit sur la branche de production de votre environnement Looker, un développeur disposant de l'autorisation deploy peut utiliser le mode de déploiement avancé pour spécifier le commit exact à utiliser pour votre environnement Looker. Cela est utile dans les workflows de développement multi-environnements, où chaque environnement pointe vers une version différente d'un codebase. Elle permet également à un ou plusieurs développeurs ou administrateurs de mieux contrôler les modifications déployées en production.

Lorsque le mode de déploiement avancé est activé, l'IDE Looker n'invite pas les développeurs à déployer leurs modifications en production. Au lieu de cela, l'IDE invite les développeurs à fusionner leurs modifications dans la branche de production. À partir de là, les modifications ne peuvent être déployées que des manières suivantes:

  • Utiliser Deployment Manager dans l'IDE Looker
  • Déclencher un webhook
  • Utiliser un point de terminaison d'API

Pour en savoir plus, consultez la page de documentation Mode de déploiement avancé.

Vérifier l'impact de vos modifications

Après avoir mis vos modifications à la disposition de l'organisation, vous pouvez utiliser la validation du contenu pour vous assurer que vous n'avez invalidé aucun tableau de bord ni aucun Look enregistré. Vous aurez la possibilité de les corriger, le cas échéant.

Gérer les problèmes courants

Lorsque vous travaillez sur votre modèle, vous devrez peut-être :

  • Annuler vos modifications

    Il peut arriver que vous souhaitiez abandonner vos modifications de modélisation des données. Si elles ne sont pas encore enregistrées, vous pouvez simplement actualiser la page ou la quitter, puis accepter l'invite d'avertissement. Si vous avez enregistré les modifications, vous pouvez annuler les modifications non validées comme décrit dans la section Annuler les modifications non validées.

  • Gérer les conflits de fusion avec le travail d'autres développeurs

    Si plusieurs développeurs travaillent sur votre modèle de données, Git gère généralement la situation. Toutefois, Git a parfois besoin d'un humain pour résoudre les conflits de fusion.

Certaines modifications, comme le changement de nom d'un champ, peuvent avoir un impact sur les tableaux de bord et les présentations existants. Comme indiqué précédemment, une fois que vous avez rendu vos modifications disponibles pour l'organisation, vous pouvez utiliser la validation du contenu pour vérifier votre contenu et résoudre les problèmes éventuels.

Annuler des modifications non validées

Lorsque vous travaillez sur votre branche de développement personnel, vous pouvez annuler les modifications non validées que vous avez enregistrées si vous ne souhaitez pas les déployer. Vous pouvez rétablir toutes les modifications non validées pour tous les fichiers du projet ou uniquement celles d'un seul fichier.

Pour annuler les modifications non validées pour tous les fichiers :

  1. Sélectionnez l'option Rétablir... dans le panneau Actions Git.
  2. Sélectionnez une option de restauration :
    • Pour annuler uniquement les modifications non validées, sélectionnez Annuler les modifications non validées. Vous pouvez également sélectionner le lien Afficher les modifications pour voir les modifications qui seraient annulées.
    • Pour annuler toutes les modifications, y compris celles non validées et validées, sélectionnez Revenir à la production.
  3. Pour finaliser le processus de restauration, sélectionnez Confirmer.

Pour annuler tout ajout ou toute suppression dans le contenu d'un seul fichier, sélectionnez l'option Annuler les modifications dans le menu du fichier:

Lorsque vous renommez un fichier, vous supprimez essentiellement le fichier d'origine et créez un nouveau fichier avec un nouveau nom. Comme cela implique plusieurs fichiers, vous ne pouvez pas annuler le changement de nom d'un fichier à l'aide de l'option Rétablir le fichier. Si vous souhaitez annuler le renommage d'un fichier, utilisez l'option Revenir à dans le panneau Actions Git.

De plus, si vous avez supprimé un fichier, il n'est plus affiché dans le navigateur de fichiers de l'IDE. Si vous souhaitez annuler la suppression d'un fichier, utilisez l'option Revenir à dans le panneau Actions Git.

Résolution des conflits de fusion

En règle générale, Git peut fusionner automatiquement vos nouvelles modifications avec la version de production de vos fichiers LookML. Un conflit de fusion se produit lorsque Git rencontre des modifications incompatibles et ne peut pas identifier celles à conserver, généralement lorsqu'un autre développeur a apporté des modifications depuis votre dernier extraction et que vous avez apporté des modifications dans la même zone. Si votre code présente un conflit de fusion, Looker affiche un avertissement Conflits de fusion après avoir validé les modifications et extrait la version de production.

Lorsque Looker affiche l'avertissement de conflit de fusion, nous vous recommandons de le résoudre avant d'apporter d'autres modifications. Si vous poussez un conflit de fusion en production, des erreurs d'analyse peuvent empêcher l'exploration de vos données. Si vous êtes un utilisateur Git avancé et que vous souhaitez poursuivre l'opération de transfert des modifications, sélectionnez le bouton Don't Resolve (Ne pas résoudre).

Dans le fichier LookML lui-même, les lignes avec des conflits sont marquées comme suit:

<<<<<<< HEAD
Your code
&#61;&#61;&#61;&#61;&#61;&#61;&#61;
Production code
>>>>>>> branch 'master'

Looker affiche les repères de fusion suivants pour indiquer les conflits de fusion:

  • &lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD marque le début des lignes en conflit.
  • >>>>>>> branch 'master' marque la fin des lignes en conflit.
  • ======= sépare chaque version du code afin que vous puissiez les comparer.

Dans l'exemple précédent, your code représente les modifications que vous avez validées, et production code représente le code dans lequel Git n'a pas pu fusionner automatiquement vos modifications.

Pour résoudre un conflit de fusion:

  1. Recherchez les fichiers présentant des conflits de fusion. Looker marque ces fichiers en rouge, mais vous pouvez aussi rechercher des repères de fusion dans votre projet, tels que <<<<< ou HEAD pour identifier tous les conflits de votre projet. Vous pouvez également rechercher les fichiers concernés en sélectionnant le lien files (Fichiers) dans l'avertissement de fusion qui s'affiche dans le panneau Actions Git.
  2. Dans le fichier, accédez aux lignes contenant des conflits de fusion et supprimez la version du texte que vous NE VOULEZ PAS conserver, ainsi que tous les repères de conflit de fusion.
  3. Enregistrez le fichier et répétez les étapes précédentes pour tous les autres fichiers présentant des conflits de fusion.

  4. Après avoir résolu tous les conflits de fusion et supprimé tous les repères de fusion de votre projet, validez les modifications et déployez-les en production.

Maintenant que vous avez résolu le conflit de fusion et déployé votre solution en production, les autres développeurs peuvent extraire les données de la version de production et continuer à travailler comme d'habitude.

Récupération de mémoire Git

La récupération des déchets Git nettoie les fichiers inutiles et compresse les révisions de fichiers pour optimiser votre dépôt Git. La récupération de mémoire Git (git gc) est exécutée automatiquement lorsque votre instance Looker est mise à jour ou redémarrée. Pour éviter d'exécuter git gc trop souvent, Looker attend 30 jours depuis le dernier git gc, puis exécute git gc au redémarrage suivant.

Dans de rares cas, vous pouvez essayer d'envoyer des modifications à distance ou d'envoyer une branche à distance lorsque git gc est en cours d'exécution. Si Looker affiche une erreur, attendez une minute ou deux, puis réessayez de pousser vos modifications.