Mobile-Menu

Speichertipp: Erweiterung von Git zur Verwaltung großer Binärdateien Git Large File Storage

Von Thomas Joos 2 min Lesedauer

Anbieter zum Thema

Git Large File Storage erweitert Git um eine strukturierte Verwaltung großer Binärdateien außerhalb des klassischen Objektmodells. Repositorys bleiben kompakt, Klon- und Push-Vorgänge skalieren besser, und Versionshistorien behalten ihre Integrität trotz umfangreicher Mediendaten.

Git LFS erweitert das Versionsverwaltungssystem und ermöglicht die effiziente Verwaltung großer Dateien.(Bild:  Midjourney / KI-generiert)
Git LFS erweitert das Versionsverwaltungssystem und ermöglicht die effiziente Verwaltung großer Dateien.
(Bild: Midjourney / KI-generiert)

Git Large File Storage ergänzt Git um einen Mechanismus zur Auslagerung großer Dateien aus dem regulären Objektmodell. Der Ansatz reduziert die Repository-Größe und beschleunigt Operationen bei gleichbleibender Versionshistorie. Der Client implementiert die Spezifikation als Kommandozeilenwerkzeug und integriert sich transparent in bestehende Workflows.

Große Dateien aus Git auslagern

Git LFS ersetzt große Inhalte im Repository durch Pointer-Dateien. Die eigentlichen Binärdaten liegen in einem separaten Objektspeicher, der über HTTPS oder SSH angebunden ist. Git verwaltet weiterhin Commits, Branches und Merges, der Transfer großer Inhalte erfolgt außerhalb des klassischen Packfile-Mechanismus. Dieser Aufbau senkt Klonzeiten und vermeidet das Verteilen historischer Binärdaten an jede Arbeitskopie.

Unter Linux stehen Debian- und RPM-Pakete zur Verfügung. Auf macOS übernimmt Homebrew die Installation. Git for Windows enthält Git LFS bereits, alternativ erfolgt die Bereitstellung über Chocolatey. Eine manuelle Installation aus Binärarchiven richtet den Client im Suchpfad ein und führt die globale Initialkonfiguration über „git lfs install“ aus. Der Quellcode lässt sich mit Go und GNU make bauen, Windows benötigt zusätzlich goversioninfo.

Die Aktivierung innerhalb eines Repositorys erfolgt über Dateimuster. Der Befehl „git lfs track "*.psd"“ ergänzt die Datei „.gitattributes“ um passende Filterregeln. Diese Regeln gehören unter Versionskontrolle und benötigen einen Commit. Ab diesem Zeitpunkt verarbeitet Git LFS passende Dateien automatisch bei Add, Commit, Pull und Push. Smudge- und Clean-Filter sorgen für den Austausch zwischen Pointer und Binärinhalt ohne Anpassungen an bestehenden Git-Kommandos.

Vorhandene große Dateien in der Historie bleiben von der Verfolgung unberührt. Für eine nachträgliche Umstellung dient „git lfs migrate import --include="*.psd" –everything“. Der Vorgang schreibt die Historie neu und ändert Objekt-IDs im gesamten Repository. Der umgekehrte Weg nutzt „git lfs migrate export“, um ein Repository wieder auf reines Git zurückzuführen. Beide Varianten erfordern abgestimmte Abläufe in Teams und auf Servern.

LFS-Objekte automatisch pushen

Die Übertragung der LFS-Objekte startet beim Push automatisch. Der Client meldet den Fortschritt getrennt vom normalen Git-Push. Mit „git lfs ls-files“ lässt sich prüfen, welche Dateien aktuell unter LFS-Verwaltung stehen. Für Diagnosezwecke liefert „git lfs env“ Umgebungsinformationen; zusätzliche Protokolle entstehen über gesetzte Tracing-Variablen.

Release-Artefakte sind mit OpenPGP signiert. Git LFS arbeitet mit Git-Versionen ab 2.0.0, aktuelle Git-Versionen verbessern Durchsatz und Stabilität. Das Projekt verwendet Go-Module, bietet jedoch keine stabile Go-API und richtet sich ausschließlich an den Einsatz als kompilierte Utility.

Aktuelles eBook

Storage-Software als Effizienzbooster

eBook Storage-Software als Effizienzbooster
eBook „Storage-Software als Effizienzbooster“
(Bild: Storage-Insider)

Mit der geeigneten Storage-Software kann sich ein Unternehmen einen Effizienzbooster ins Haus holen oder in der Cloud abonnieren. Dieser Booster steigert nicht nur die Performance der geschäftskritischen Anwendungen, sondern optimiert auch die Kosten der bereits installierten Speichersysteme.

Die Themen im Überblick:

  • Herausforderungen eines modernen Speichersystems
  • Methoden und Technologien effizienter Speichersysteme
  • Effizienter Speicher mit Pure Storage, AWS, Cohesity und Dell

(ID:50683703)

Jetzt Newsletter abonnieren

Täglich die wichtigsten Infos zu Data-Storage und -Management

Mit Klick auf „Newsletter abonnieren“ erkläre ich mich mit der Verarbeitung und Nutzung meiner Daten gemäß Einwilligungserklärung (bitte aufklappen für Details) einverstanden und akzeptiere die Nutzungsbedingungen. Weitere Informationen finde ich in unserer Datenschutzerklärung. Die Einwilligungserklärung bezieht sich u. a. auf die Zusendung von redaktionellen Newslettern per E-Mail und auf den Datenabgleich zu Marketingzwecken mit ausgewählten Werbepartnern (z. B. LinkedIn, Google, Meta).

Aufklappen für Details zu Ihrer Einwilligung