Git
Git Large File Storage (LFS)
Suche…
Bemerkungen
Git Large File Storage (LFS) zielt darauf ab, eine Einschränkung des Git-Versionskontrollsystems zu vermeiden, da es bei der Versionierung großer Dateien, insbesondere Binärdateien, schlecht funktioniert. LFS löst dieses Problem, indem der Inhalt solcher Dateien auf einem externen Server gespeichert wird und stattdessen nur ein Textzeiger auf den Pfad dieser Assets in der git-Objektdatenbank festgelegt wird.
Übliche Dateitypen, die über LFS gespeichert werden, sind in der Regel kompilierte Quellen. grafische Assets wie PSDs und JPEGs; oder 3D-Assets. Auf diese Weise können von Projekten verwendete Ressourcen in demselben Repository verwaltet werden, anstatt ein separates Verwaltungssystem extern verwalten zu müssen.
LFS wurde ursprünglich von GitHub entwickelt ( https://github.com/blog/1986-announcing-git-large-file-storage-lfs) . Atlasssian hatte jedoch fast zeitgleich an einem ähnlichen Projekt gearbeitet, dem sogenannten Git-Lob . Bald wurden diese Bemühungen zusammengelegt, um eine Fragmentierung in der Branche zu vermeiden.
LFS installieren
Laden Sie herunter und installieren Sie sie entweder über Homebrew oder von der Website .
Für brauen,
brew install git-lfs
git lfs install
Oft müssen Sie auch den Dienst einrichten, der Ihre Fernbedienung hostet, damit er mit lfs arbeiten kann. Dies ist für jeden Host anders, aber es wird wahrscheinlich nur ein Kästchen angekreuzt, in dem Sie angeben, dass Sie git lfs verwenden möchten.
Deklarieren Sie bestimmte Dateitypen für die externe Speicherung
Ein üblicher Arbeitsablauf für die Verwendung von Git LFS besteht darin, zu deklarieren, welche Dateien über ein .gitignore
System abgehört werden, genau wie .gitignore
Dateien.
In der Regel werden Platzhalter verwendet, um bestimmte Dateitypen für das Tracking auszuwählen.
zB git lfs track "*.psd"
Wenn eine Datei hinzugefügt wird, die mit dem obigen Muster übereinstimmt, werden sie festgeschrieben. Wenn sie dann an die Remote gesendet wird, wird sie separat hochgeladen, wobei ein Zeiger die Datei im Remote-Repository ersetzt.
Nachdem eine Datei mit lfs verfolgt wurde, wird Ihre .gitattributes
Datei entsprechend aktualisiert. Github empfiehlt, Ihre lokale .gitattributes
Datei zu begehen, anstatt mit einer globalen .gitattributes
Datei zu arbeiten, um sicherzustellen, dass bei der Arbeit mit verschiedenen Projekten keine Probleme auftreten.
Legen Sie die LFS-Konfiguration für alle Klone fest
Erstellen Sie zum .lfsconfig
LFS-Optionen für alle Klone eine Datei mit dem Namen .lfsconfig
im Repository-Stammverzeichnis. Diese Datei kann LFS-Optionen auf dieselbe Weise angeben wie in .git/config
zulässig.
Um beispielsweise eine bestimmte Datei von LFS- .lfsconfig
auszuschließen, müssen Sie .lfsconfig
mit folgendem Inhalt erstellen und .lfsconfig
:
[lfs]
fetchexclude = ReallyBigFile.wav