Aller au contenu principal

Dépannage des erreurs pour les dossiers Git Databricks

Cette page décrit les erreurs courantes et les comportements inattendus lors de l’utilisation des dossiers Git Databricks avec un fournisseur Git distant, regroupés par catégorie pour vous aider à identifier la cause plus rapidement. Si aucune des instructions ci-après ne résout votre problème, consultez Obtenir de l’aide.

Erreurs d’authentification

Ces erreurs se produisent lorsque Databricks ne peut pas vérifier votre identité auprès du fournisseur Git distant.

Invalid credentials

Essayez ce qui suit :

  • Vérifiez que les paramètres d'intégration Git ( Paramètres > Comptes associés ) sont corrects. Vous devez saisir à la fois votre nom d'utilisateur du fournisseur Git et votre jeton.

  • Confirmez que vous avez sélectionné le bon fournisseur Git dans Settings > Linked accounts.

  • Vérifiez que votre jeton d'accès personnel ou votre mot de passe d'application dispose de l'accès au dépôt approprié.

  • Si votre fournisseur Git a activé la SSO, autorisez vos jetons pour la SSO.

  • Testez votre jeton avec la ligne de commande Git. Remplacez les chaînes de texte entre chevrons :

    Bash
    git clone https://<username>:<personal-access-token>@github.com/<org>/<repo-name>.git

Erreurs de connexion SSL

Console
<link>: Secure connection to <link> could not be established because of SSL problems

Cette erreur se produit lorsque Databricks ne peut pas atteindre votre serveur Git via HTTPS. Elle indique généralement un problème de connectivité réseau ou un problème de certificat TLS sur l'infrastructure Git de votre organisation.

Avant de contacter votre équipe de compte Databricks, veuillez préparer les informations suivantes :

  • L'URL de votre serveur Git
  • Si le serveur utilise un certificat autosigné ou un certificat CA privé
  • Si d'autres utilisateurs du même Workspace voient la même erreur

Erreurs d'état du repository

Ces erreurs se produisent lorsque le dossier Git local atteint un état qui empêche les opérations normales.

État principal détaché

Dans Git, le « head » fait référence à la position actuelle dans l'historique des commit, et il pointe normalement vers une branch. Lorsque la tête pointe directement vers un commit spécifique plutôt que vers une branch, le repository est dans un état de « detached head ». Git ne suit pas les modifications apportées dans cet état sur aucune branch. Si vous quittez la page sans avoir créé une nouvelle branch au préalable, ces modifications pourraient être perdues.

Un dossier Git peut entrer dans l'état de tête détachée lorsque :

  • Quelqu'un supprime la Branch distante. Databricks tente de récupérer les modifications locales non validées en les appliquant à la default Branch. S'il existe des modifications conflictuelles, Databricks les applique sur un instantané de la branch default, ce qui entraîne une tête détachée.
  • Un utilisateur ou un Service Principal retire une balise à l'aide de l'update repo API.

Pour récupérer de cet état :

  1. Cliquez sur **Create Branch** pour créer une Branch à partir du commit actuel, ou sur **Select Branch** pour extraire une Branch existante.
  2. Commit et envoyez pour conserver vos modifications. Pour annuler les modifications, cliquez sur le menu kebab Icône du menu kebab. sous Modifications .

État inconsistent du repository

Console
There was a problem with deleting folders. The repo could be in an inconsistent state and re-cloning is recommended.

Cette erreur indique qu'un problème est survenu lors de la suppression des dossiers. Le repository est maintenant dans un état incohérent. Supprimez et recloner le repository pour réinitialiser son état.

Conflits de noms de notebook

Les Notebooks avec des noms de fichiers identiques ou similaires peuvent provoquer des erreurs lorsque vous créez un repository ou une demande d'extraction :

Console
Cannot perform Git operation due to conflicting names
Console
A folder cannot contain a notebook with the same name as a notebook, file, or folder (excluding file extensions).

Des conflits de noms peuvent survenir même avec différentes extensions de fichier. Par exemple, ces deux fichiers sont en conflit :

  • notebook.ipynb
  • notebook.py

Diagramme : Conflit de noms pour le Notebook, le fichier ou le dossier.

Pour résoudre le conflit, renommez le Notebook, le fichier ou le dossier qui contribue à l'état d'erreur. Si l'erreur se produit lorsque vous clonez le référentiel, renommez les Notebooks, fichiers ou dossiers dans le référentiel Git distant.

Comportement inattendu

Ces problèmes ne produisent pas de message d'erreur clair, mais ils sont des signes d'un problème qui nécessite une investigation.

Erreurs de délai d'expiration

Les opérations telles que le clonage d'un grand repository ou l'extraction d'une grande Branch peuvent entraîner des erreurs de temporisation. L'opération pourrait se terminer en arrière-plan après le délai d'expiration.

Si vous voyez une erreur de délai d'expiration :

  1. Veuillez patienter quelques minutes, puis refresh le dossier Git. Si les fichiers ou Branch attendus sont présents, l'Opération s'est terminée avec succès.
  2. Si le Workspace était fortement sollicité, réessayez l’opération une fois la charge diminuée.

Pour éviter les délais d'expiration avec les grands repositories, utilisez le sparse checkout pour travailler uniquement avec les fichiers dont vous avez besoin.

Erreurs 404

Si vous obtenez une erreur 404 en ouvrant un fichier non-notebook, attendez quelques minutes et réessayez. Il y a un court délai entre le moment où le système active le workspace et le moment où l'application web prend en compte la configuration.

Les Notebooks apparaissent modifiés sans modifications de l'utilisateur

Si chaque ligne d'un notebook apparaît modifiée sans aucune modification de l'utilisateur, les changements sont probablement dus à des différences de fin de ligne. Databricks utilise les fins de ligne de style Linux (LF), qui peuvent différer des fichiers validés sur les systèmes Windows (CRLF).

Pour diagnostiquer ce problème, vérifiez si vous disposez d'un fichier .gitattributes :

  • Il ne peut pas contenir * text eol=crlf.
  • Si vous n'utilisez pas Windows, supprimez ce paramètre. Votre environnement de développement et Databricks utilisent tous deux les fins de ligne Linux.
  • Si vous utilisez Windows, modifiez le paramètre en * text=auto. Git stocke alors les fichiers avec des fins de ligne de style Linux en interne, mais les extrait automatiquement avec des fins de ligne spécifiques à la plateforme.

Si vous avez déjà validé des fichiers avec des caractères de fin de ligne Windows dans Git :

  1. Effacez toutes les modifications en attente.
  2. Mettez à jour le fichier .gitattributes comme décrit ci-dessus pour votre environnement.
  3. commit la modification.
  4. Exécutez git add --renormalize. commit et envoyez toutes les modifications.

Récupérer les fichiers supprimés

La récupérabilité des fichiers varie selon l'action. Certaines actions permettent la récupération via le dossier Corbeille , tandis que d'autres non. Pour restaurer les fichiers précédemment commité et poussés vers une Branch distante, utilisez l'historique de commit Git du repository distant :

Action

Le fichier est-il récupérable ?

Supprimer un fichier avec le navigateur Workspace

Oui, à partir du dossier Corbeille

Jeter un nouveau fichier avec la boîte de dialogue du dossier Git

Oui, à partir du dossier Corbeille

Supprimez un fichier modifié à l'aide de la boîte de dialogue du dossier Git

Non, le fichier est disparu

reset (difficile) pour les modifications de fichiers non validées

Non, les modifications de fichiers ont disparu.

reset (en dur) pour les fichiers nouvellement créés et non validés

Non, les modifications de fichiers ont disparu.

Changez de branches avec la boîte de dialogue du dossier Git.

Oui, depuis le référentiel Git distant

Autres opérations Git, telles que commit ou push, à partir de la boîte de dialogue du dossier Git

Oui, depuis le référentiel Git distant

PATCH Opérations de mise à jour de /repos/id à partir de l'API Repos

Oui, depuis le référentiel Git distant

Action

Le fichier est-il récupérable ?

Supprimer un fichier avec le navigateur Workspace

Oui, à partir du dossier Corbeille

Jeter un nouveau fichier avec la boîte de dialogue du dossier Git

Oui, à partir du dossier Corbeille

Supprimez un fichier modifié à l'aide de la boîte de dialogue du dossier Git

Non, le fichier est disparu

reset (difficile) pour les modifications de fichiers non validées

Non, les modifications de fichiers ont disparu.

reset (en dur) pour les fichiers nouvellement créés et non validés

Non, les modifications de fichiers ont disparu.

Changez de branches avec la boîte de dialogue du dossier Git.

Oui, depuis le référentiel Git distant

Autres opérations Git, telles que commit ou push, à partir de la boîte de dialogue du dossier Git

Oui, depuis le référentiel Git distant

PATCH Opérations de mise à jour de /repos/id à partir de l'API Repos

Oui, depuis le référentiel Git distant

Obtenir de l'aide

Si aucune des directives de cette page ne résout votre problème, veuillez contacter l'assistance Databricks. Lorsque vous contactez l'assistance, veuillez inclure les éléments suivants :

  • Le message d'erreur exact
  • Le nom de votre fournisseur Git et si le repository est public ou privé
  • Si le problème affecte tous les utilisateurs ou seulement certains utilisateurs de votre Workspace.
  • Les étapes que vous avez déjà essayées