Für eine Java-App, an der ich arbeite, speichern wir einige Ubuntu-Schriftarten in unserem Git-Repository. Beachten Sie, dass dies für andere Entwickler auf anderen Maschinen mit einem ähnlichen Setup wie erwartet funktioniert.
Dieses Problem tritt nur bei der Verwendung von WSL Git und nicht bei Git für Windows/Git Bash (gitforwindows.org) auf.
Windows (insbesondere System32/fontview.exe) und unsere Anwendung können diese Schriftdateien nicht öffnen/laden, wenn sie sich in einem Git-Repository befinden.
Die angeforderte Datei ... ist keine gültige Schriftartdatei.
mv
Wenn Sie dieselbe Datei an einen beliebigen Ort außerhalb eines Git-Repositorys verschieben, kann Windows die Datei öffnen. Die Datei ist dieselbe (überprüft mit sha1sum < fontfile.ttf
).
Derselbe Fehler tritt auch beim Kopieren der Datei in ein neu initialisiertes Git-Repository auf.
Dies gilt für alle TTF-Dateien, auch wenn sie neu aus dem Internet heruntergeladen wurden.
Auch danach rm -rf .git
können die Dateien noch immer nicht geöffnet/geladen werden. Dieser bestimmte Verzeichnisname ist irgendwie dauerhaft betroffen.
Das Problem besteht nach einem Neustart weiterhin.
Antwort1
Uns wurde mitgeteilt, dass der Zugriff auf Windows-Dateien von WSL aus zwar in Ordnung ist (über /mnt/c, /mnt/d usw.), der umgekehrte Zugriff jedoch aufgrund der Art und Weise, wie das Linux-Dateisystem in Windows emuliert wird (?), nicht unterstützt wird.
Daher sollten Sie Ihre Dateien an einen Speicherort in der eigentlichen Windows-Umgebung kopieren (z. B. /mnt/c/Users/joebloggs/workspace ...), bevor Sie versuchen, mit Windows-basierten Tools darauf zuzugreifen.
Dies könnte sich jedoch ändern, diese neue Funktionalität ermöglicht Ihnen den Zugriff auf das Linux-Dateisystem wie auf ein Netzlaufwerk:
https://betanews.com/2019/02/16/access-linux-files-from-windows/
Wenn Sie Git nur unter Windows ausführen möchten, verwenden Sie „Git für Windows“ ohne WSL! zBhttps://git-scm.com/download/win