Datalore
Collaborative data science platform for teams
Comment travailler avec Git dans Datalore
Git est un outil très utilisé par les équipes travaillant dans le domaine de la science des données. Ce tutoriel explique comment travailler avec Git dans Datalore, notre plateforme collaborative pour la science des données.
Poursuivez votre lecture pour découvrir comment installer des référentiels Git, modifier leur contenu et gérer les versions avec Datalore.
Comment installer un référentiel Git dans votre environnement de notebooks Datalore
Si vous ou votre équipe développez une collection de scripts Python ou un package compatible avec pip stocké dans Git, vous pouvez facilement accéder à ce référentiel depuis les notebooks Jupyter dans Datalore.
Il y a trois façons de procéder. Nous recommandons de choisir la méthode en fonction du niveau d’accès et du type de votre référentiel.
Utilisation de Environment | Repositories | Utilisation de Tools | Terminal ou de commandes magiques IPython | Utilisation de l’environnement de base d’équipe (fonctionnalité disponible avec le forfait Enterprise uniquement) | |
Niveau d’accès du référentiel | À partir d’un notebook donné | À partir d’un notebook donné ou de chaque notebook dans un espace de travail choisi | Tout notebook de tout collaborateur dans tout espace de travail |
Type de référentiel | Référentiels Git publics et référentiels Git privés via SSH | Tout référentiel, public ou privé, Git ou non (Artifactory, Space Packages, référentiels PyPI hébergés de façon privée) | Tout référentiel, public ou privé, Git ou non (Artifactory, Space Packages, référentiels PyPI hébergés de façon privée) |
Spécificités de l’installation | Installation à la demande, pouvant être actualisée à tout moment depuis l’interface utilisateur | Lors de l’installation à la demande avec la ligne de commande de Git, certaines options peuvent être automatisées avec init.sh et installées au démarrage du calcul du notebook | Installation dans le cadre de l’image personnalisée de Docker |
Type d’actualisation | Bouton d’actualisation et redémarrage du noyau | Utilisation de la ligne de commande Git via Terminal | Reconstruire l’image Docker |
Actions disponibles | Clone, pull | Clone, pull, push | Cloner lors de la création de l’image |
Le principal intérêt du clonage de référentiels Git ave Datalore est de pouvoir accéder à des modules, scripts ou fonctions Python personnalisés et de les modifier de façon collaborative dans Datalore. Cependant, les notebooks Jupyter clonés dans le cadre du référentiel Git actuel ne peuvent pas être modifiés.
Utilisation de Environment | Repositories
Le moyen le plus simple d’installer un référentiel Git public d’une interface utilisateur dans un seul notebook Datalore est d’utiliser Environment | Repositories. Vous pouvez choisir la branche du référentiel et actualiser la connexion depuis l’interface utilisateur.
Pour accéder à un référentiel Git privé, il vous suffit de fournir les clés SSH dans Environment | Repositories | Keys.
Pour accéder à un référentiel Git privé avec un jeton personnel ou au moyen d’un nom d’utilisateur et mot de passe, utilisez un script init.sh ou Terminal.
Utilisation de Terminal et de scripts init.sh
Si vous voulez cloner un référentiel Git depuis Terminal, ouvrez un notebook, allez dans Tools | Terminal, et utilisez la ligne de commandes Git pour cloner. Si vous souhaitez utiliser un référentiel dans un seul notebook, clonez-le en utilisant Notebook files. Si vous voulez utiliser un référentiel dans tous les notebooks de l’espace de travail, clonez-le dans Workspace files.
Pour accéder aux contenus du référentiel depuis le notebook, importez les fonctions nécessaires. Datalore fournit la saisie semi-automatique du code et des fenêtres contextuelles de documentation pour les modules Python importés.
Pour automatiser l’exécution d’un ensemble de commandes de Terminal à chaque démarrage du notebook, vous pouvez utiliser le script shell init.sh.
Vous pouvez notamment configurer l’accès à vos référentiels privés, configurer l’utilisation de vos jetons personnels, installer des dépendances autres que Python et monter des répertoires de fichiers. Vous pouvez faire cela automatiquement avant que le gestionnaire d’environnement pip ou conda n’exécute les paramètres de l’environnement de base.
Si vous devez spécifier un nom d’utilisateur ou un mot de passe pour accéder aux fichiers dans un référentiel ou faire un push des fichiers, ajoutez les configurations suivantes dans votre script init.sh :
git config --global user.email "email@example.com" git config --global user.name "your name"
Pour rendre le script init.sh disponible pour l’ensemble des notebooks de l’espace de travail, assurez-vous que les fichiers de l’espace de travail sont joints et déplacez le fichier init.sh de Notebook files vers Workspace files.
Utilisation de l’environnement de base d’une équipe
Si vous voulez fournir un accès centralisé à un répertoire donné à votre équipe, vous pouvez faire de ce référentiel un élément de l’environnement de base personnalisé.
Les environnements de base sont des images Docker personnalisées qui peuvent être facilement utilisées comme configurations prédéfinies lors de la création d’un notebook dans Datalore.
Les environnements de base personnalisés ne sont disponibles que pour les utilisateurs de la version Enterprise. Pour configurer un environnement de base personnalisé pour Datalore Enterprise, utilisez ce guide.
Comment modifier le contenu du référentiel Git dans Datalore
Si vous voulez modifier des scripts ou des fichiers Python disponibles dans votre référentiel Git, vous pouvez cloner le référentiel dans Attached data en utilisant :
- Tools | Terminal : cela ouvre une session de terminal et permet d’exécuter les commandes de Git CLI.
- Commandes magiques Python dans les cellules de code d’un notebook.
Si vous souhaitez cloner le référentiel et le modifier depuis un notebook, clonez-le dans Notebook files. Si vous voulez modifier le référentiel depuis un notebook de l’espace de travail, clonez-le dans Workspace files. Pour Home workspace files, il peut être nécessaire de joindre Workspace files explicitement à un notebook.
Après le clonage du référentiel dans Attached data, vous pouvez modifier le contenu du fichier de façon collaborative.
Pour les fichiers Python, vous bénéficiez également de la saisie semi-automatique du code et de la mise en évidence des éléments de syntaxe. Pour utiliser les fonctions mises à jour dans votre notebook, vous devez redémarrer le noyau ou utilisez une extension qui se recharge automatiquement :
%load_ext autoreload %autoreload 2
⚠️ Actuellement, il n’est pas possible de modifier les notebooks Jupyter qui font partie de votre référentiel Git cloné. Pour visualiser un notebook Jupyter depuis le référentiel, vous pouvez cliquer deux fois dessus pour que Datalore ouvre le notebook dans un nouvel onglet. Nous en disons plus sur ce workflow dans le dernier paragraphe de cet article.
Comment gérer les versions de votre travail de science de données avec Git et Datalore
Les notebooks Jupyter ont une place de premier ordre dans Datalore. Pour assurer le suivi des modifications dans le notebook, nous recommandons d’utiliser l’outil History de Datalore.
En allant dans Tools | History, vous pouvez :
- Revenir aux états enregistrés précédemment.
- Voir la différence entre la version actuelle du notebook et les points de contrôle.
- Créer de nouveaux points de contrôle personnalisés en utilisant Ctrl/Cmd+S.
- Voir les modifications effectuées par vos collaborateurs.
De plus, Datalore crée automatiquement des points de contrôle pour rectifier les actions potentiellement dangereuses, telles que la suppression d’une cellule de notebook.
Pour suivre les versions les fichiers Python que vous avez développé dans Datalore via un système de contrôle de versions, vous pouvez utiliser Terminal pour effectuer un commit ou un push des fichiers ou des dossiers vers Git.
Il y a de nombreuses façons de travailler avec les référentiels Git dans Datalore mais nous pensons que l’outil History interne et les fonctionnalités de collaboration en direct vous aideront à vous concentrer davantage sur vos tâches de science de données plutôt que sur l’utilisation de Git. Si vous devez partager vos scripts, accès ou modifications dans des référentiels internes, vous pouvez le faire avec le Terminal de Datalore, les scripts init.sh et le gestionnaire Environment à tout moment.
À bientôt !
L’Équipe Datalore
Article original en anglais de :