Fehlerbehebung für Git-Ordner von Databricks

Diese Seite beschreibt häufige Fehler und unerwartetes Verhalten bei der Verwendung von Azure Databricks Git-Ordnern mit einem Git-Remoteanbieter, gruppiert nach Kategorie, um die Ursache schneller zu identifizieren. Wenn keine der hier aufgeführten Anleitungen Ihr Problem behebt, lesen Sie "Hilfe anfordern".

Authentifizierungsfehler

Diese Fehler treten auf, wenn Azure Databricks Ihre Identität mit dem Remote-Git-Anbieter nicht überprüfen können.

Invalid credentials

Probieren Sie Folgendes aus:

  • Vergewissern Sie sich, dass die Git-Integrationseinstellungen (Einstellungen>Verknüpfte Konten) korrekt sind. Sie müssen sowohl den Benutzernamen Ihres Git-Anbieters als auch Ihr Token eingeben.

  • Vergewissern Sie sich, dass Sie den richtigen Git-Anbieter in >"Verknüpfte Einstellungen" ausgewählt haben.

  • Überprüfen Sie, ob Ihr persönliches Zugriffstoken oder App-Kennwort über den richtigen Repositoryzugriff verfügt.

  • Wenn Ihr Git-Anbieter SSO aktiviert hat, autorisieren Sie Ihre Token für SSO.

  • Testen Sie Ihr Token mit der Git-Befehlszeile. Ersetzen Sie die Textzeichenfolgen in spitzen Klammern:

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

SSL-Verbindungsfehler

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

Dieser Fehler tritt auf, wenn Azure Databricks Ihren Git-Server nicht über HTTPS erreichen kann. Es weist in der Regel auf ein Netzwerkverbindungsproblem oder ein TLS-Zertifikatproblem in der Git-Infrastruktur Ihrer Organisation hin.

Bevor Sie sich mit Ihrem Azure Databricks Kontoteam in Verbindung setzen, können Sie die folgenden Informationen vorbereiten:

  • Die URL Ihres Git-Servers
  • Gibt an, ob der Server ein selbstsigniertes oder privates Zertifizierungsstellenzertifikat verwendet.
  • Gibt an, ob andere Benutzer im selben Arbeitsbereich denselben Fehler sehen.

Microsoft Entra ID Fehler bei den Anmeldeinformationen

Encountered an error with your :re[ms-entra-id] credentials. Try logging out of :re[ms-entra-id] and logging back in.

Dieser Fehler kann auftreten, wenn Ihre Organisation kürzlich eine mehrstufige Authentifizierungsrichtlinie (Multi-Factor Authentication, MFA) aktiviert hat. Wenn die MFA-Erzwingung wirksam wird, erfüllen vorhandene Microsoft Entra ID Sitzungen möglicherweise nicht die neuen Authentifizierungsanforderungen, und die Verbindung schlägt fehl.

So beheben Sie den Fehler

  1. Wechseln Sie zu portal.azure.com, und melden Sie sich bei Microsoft Entra ID ab.
  2. Melden Sie sich wieder an. Es sollte eine Aufforderung angezeigt werden, die MFA abzuschließen.

Wenn dies nicht funktioniert, melden Sie sich bei allen Azure Diensten ab, bevor Sie sich erneut anmelden.

Fehler beim Repository-Zustand

Diese Fehler treten auf, wenn der lokale Git-Ordner einen Zustand erreicht, der normale Vorgänge verhindert.

Getrennter Kopfzustand

In Git bezieht sich der "Head" auf die aktuelle Position im Commit-Verlauf und verweist normalerweise auf eine Verzweigung. Wenn der Kopf direkt auf einen bestimmten Commit anstatt auf eine Verzweigung zeigt, befindet sich das Repository in einem "getrennten Kopf"-Zustand. Git verfolgt Änderungen, die in diesem Zustand vorgenommen werden, in keinem Branch. Wenn Sie weg navigieren, ohne zuerst eine neue Verzweigung zu erstellen, gehen diese Änderungen möglicherweise verloren.

Ein Git-Ordner kann in folgenden Fällen den getrennten Kopfstatus eingeben:

  • Jemand löscht den Remote-Branch. Azure Databricks versucht, nicht committete lokale Änderungen wiederherzustellen, indem diese auf den Standardbranch angewendet werden. Wenn es widersprüchliche Änderungen gibt, wendet Azure Databricks sie auf einen Snapshot des Standard-Branchs an, was zu einem detached HEAD führt.
  • Ein Benutzer- oder Dienstprinzipal checkt ein Tag mithilfe der update repo API aus.

So stellen Sie diesen Zustand wieder her:

  1. Klicken Sie auf "Verzweigung erstellen", um eine Verzweigung aus dem aktuellen Commit zu erstellen, oder auf "Verzweigung auswählen ", um eine vorhandene Verzweigung auszuchecken.
  2. Commit und Pushen, um Ihre Änderungen zu speichern. Um Änderungen zu verwerfen, klicken Sie auf das Kebab-Menüsymbol. Kebab-Menü unter "Änderungen".

Inkonsistenter Repositorystatus

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

Dieser Fehler weist darauf hin, dass beim Löschen von Ordnern ein Problem aufgetreten ist. Das Repository befindet sich jetzt in einem inkonsistenten Zustand. Löschen Sie das Repository, und klonen Sie es erneut, um den Status zurückzusetzen.

Namenskonflikte bei Notebooks

Notizbücher mit identischen oder ähnlichen Dateinamen können Fehler verursachen, wenn Sie ein Repository oder eine Pullanforderung erstellen:

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

Namenskonflikte können auch bei verschiedenen Dateierweiterungen auftreten. Diese beiden Dateien stehen beispielsweise im Konflikt:

  • notebook.ipynb
  • notebook.py

Diagramm: Bennenungskonflikt für Notebook, Datei oder Ordner.

Um den Konflikt zu beheben, benennen Sie das Notizbuch, die Datei oder den Ordner um, die zum Fehlerstatus beitragen. Wenn der Fehler auftritt, wenn Sie das Repository klonen, benennen Sie die Notizbücher, Dateien oder Ordner im Git-Remote-Repository um.

Unerwartetes Verhalten

Diese Probleme erzeugen keine eindeutige Fehlermeldung, aber sie sind Anzeichen für ein Problem, das untersucht werden muss.

Timeoutfehler

Vorgänge wie das Klonen eines großen Repositorys oder das Auschecken eines großen Branches können zu Timeout-Fehlern führen. Der Vorgang kann nach Ablauf des Timeouts weiterhin im Hintergrund abgeschlossen werden.

Wenn ein Timeout-Fehler angezeigt wird:

  1. Warten Sie einige Minuten, und aktualisieren Sie dann den Git-Ordner. Wenn die erwarteten Dateien oder Verzweigungen vorhanden sind, wurde der Vorgang erfolgreich abgeschlossen.
  2. Wenn der Arbeitsbereich stark belastet wurde, versuchen Sie den Vorgang erneut, nachdem die Last verringert wurde.

Um Timeouts bei großen Repositories zu vermeiden, verwenden Sie Sparse Checkout, um nur mit den Dateien zu arbeiten, die Sie benötigen.

404-Fehler

Wenn beim Öffnen einer Nicht-Notizbuchdatei ein Fehler von 404 angezeigt wird, warten Sie einige Minuten, und versuchen Sie es erneut. Es gibt eine kurze Verzögerung zwischen dem Zeitpunkt, an dem das System den Arbeitsbereich aktiviert und wenn die Webapp die Konfiguration aufnimmt.

Notebooks scheinen ohne Bearbeitungen durch den Benutzer geändert worden zu sein

Wenn jede Zeile eines Notizbuchs ohne Benutzerbearbeitungen geändert wird, sind die Änderungen wahrscheinlich auf Zeilenendeunterschiede zurückzuführen. Azure Databricks verwendet Zeilenenden im Linux-Stil (LF), die sich von Dateien unterscheiden können, die auf Windows Systemen (CRLF) zugesichert werden.

Um dieses Problem zu diagnostizieren, überprüfen Sie, ob Sie eine .gitattributes Datei haben:

  • Er kann nicht enthalten * text eol=crlf.
  • Wenn Sie Windows nicht verwenden, entfernen Sie diese Einstellung. Sowohl Ihre Entwicklungsumgebung als auch Azure Databricks verwenden Linux-Zeilenenden.
  • Wenn Sie Windows verwenden, ändern Sie die Einstellung in * text=auto. Git speichert dann Dateien mit Linux-Linienenden intern, checkt aber automatisch mit plattformspezifischen Zeilenenden aus.

Wenn Sie bereits Dateien mit Windows Zeilenendezeichen in Git zugesichert haben:

  1. Löschen Sie alle ausstehenden Änderungen.
  2. Aktualisieren Sie die .gitattributes Datei wie oben beschrieben für Ihre Umgebung.
  3. Führen Sie für die Änderung einen Commit aus.
  4. Führen Sie git add --renormalize aus. Führen Sie einen Commit aus, und pushen Sie alle Änderungen.

Wiederherstellen gelöschter Dateien

Die Wiederherstellbarkeit von Dateien variiert je nach Aktion. Einige Aktionen ermöglichen die Wiederherstellung über den "Papierkorb"-Ordner, andere dagegen nicht. Verwenden Sie den Git-Commitverlauf des Remote-Repositorys, um zuvor zugesicherte Dateien wiederherzustellen und an eine Remote-Verzweigung zu übertragen:

Action Ist die Datei wiederherstellbar?
Datei mit Arbeitsbereichsbrowser löschen Ja, aus dem Ordner "Papierkorb "
Eine neue Datei über das Git-Ordner-Dialogfeld verwerfen Ja, aus dem Ordner "Papierkorb "
Verwerfen einer geänderten Datei mit dem Dialogfeld "Git"-Ordner Nein, die Datei ist nicht mehr vorhanden.
reset (schwierig) für nicht ausgelassene Dateiänderungen Nein, Dateiänderungen sind nicht mehr vorhanden.
reset (schwierig) für nicht ausgelassene, neu erstellte Dateien Nein, Dateiänderungen sind nicht mehr vorhanden.
Wechseln von Verzweigungen mit dem Dialogfeld "Git-Ordner" Ja, aus dem Remote-Git-Repository
Andere Git-Vorgänge, z. B. Commit oder Push, aus dem Dialogfeld "Git-Ordner" Ja, aus dem Remote-Git-Repository
PATCH Operationen, die /repos/id mithilfe der Repos-API aktualisieren Ja, aus dem Remote-Git-Repository

Hilfe erhalten

Wenn kein Leitfaden auf dieser Seite Ihr Problem behebt, wenden Sie sich an den Azure Databricks Support. Wenn Sie sich an den Support wenden, schließen Sie Folgendes ein:

  • Die genaue Fehlermeldung
  • Der Name Ihres Git-Anbieters und ob das Repository öffentlich oder privat ist
  • Gibt an, ob sich das Problem auf alle Benutzer oder nur auf einige Benutzer in Ihrem Arbeitsbereich auswirkt.
  • Die Schritte, die Sie bereits ausprobiert haben