Git LFS 2.2 hilft bei der Umstellung von Repositories

Der neue Befehl "migrate" kann sowohl einzelne Dateien, bestimmte Dateitypen oder Branches in Git LFS umwandeln. Außerdem können Entwickler sich anzeigen lassen, welche Dateien zu groß für herkömmliche Repositories sind.

In Pocket speichern vorlesen Druckansicht
Git LFS 2.2 hilft bei der Umstellung
Lesezeit: 2 Min.
Von
  • Rainald Menge-Sonnentag

GitHub hat Version 2.2 von Git LFS (Large File Storage) angekündigt, die neben den üblichen Bugfixes vor allem eine wesentliche Neuerung enthält: Der Befehl migrate hilft bei der Umstellung herkömmlicher Repository-Inhalte auf Git LFS. So dürfen einzelne Dateien in herkömmlichen GitHub-Repositories nicht die Größe von 100 MByte überschreiten und erfordern einen Umbau.

Der einfachste Anwendungsfall des Migrationsbefehls ist der Informationsmodus über git lfs migrate info, mit dem Entwickler sich anzeigen lassen können, welche Dateien aufgrund ihrer Größe einen Push verhindern. Für die eigentliche Umstellung bietet der migrate-Befehl zahlreiche Filterfunktionen, über die Entwickler einzelne Dateitypen ein- beziehungsweise ausschließen oder lediglich bestimmte Branches migrieren können.

Der Grund für die Entwicklung von Git LFS war, dass Projekte zunehmend nicht nur Quellcode und kleinere Grafikressourcen oder Sounds enthalten, sondern Videos, hochauflösende Grafiken und umfangreiche Datensätze hinzugekommen sind. Die großen Dateien lassen sich nicht ohne Performanceeinbußen in die herkömmlichen Arbeitsabläufe der Versionsverwaltung einbinden. Dank Git LFS kopiert das System die Binärdateien auf externe Storage-Server und verwaltet im Repository lediglich Verweise darauf.

Git LFS ist ein Open-Source-Projekt, an dessen Entwicklung neben GitHub unter anderem auch Atlassian beteiligt ist und das die großen Repository-Hoster GitHub, Atlassian und GitLab gleichermaßen anbieten. Da es sich um eine Erweiterung von Git handelt, ist es nicht an den Einsatz in Online-Dienste gebunden. Der Client ist in Go umgesetzt und für Linux, Windows und macOS verfügbar. (rme)