Versionskontrolle: Git 2.37 beschleunigt Arbeit mit Teil-Repositorys
Das Werkzeug Git unterstützt bereits Teil-Check-outs. Mit dem Sparse-Index soll dies noch schneller werden.

Die aktuelle Version 2.37 des Versionskontrollsystems Git ist erschienen, wie das Unternehmen Github in seinem Blog ankündigt. Damit sei die neue Funktion des sogenannten Sparse-Index erstmals bereit für den breiten Einsatz durch Nutzer. Das sollte vor allem die Arbeit mit großen Repositorys und Monorepositorys beschleunigen.
Dazu heißt es in der Ankündigung: "Wenn Sie in einem extrem großen Repository arbeiten, muss häufig nicht der gesamte Inhalt Ihres Repositorys lokal vorhanden sein, um einen Beitrag leisten zu können. Wenn Ihr Unternehmen beispielsweise ein einzelnes Monorepo verwendet, sind Sie möglicherweise nur an den Teilen des Repositorys interessiert, die den wenigen Produkten entsprechen, an denen Sie arbeiten."
Der Sparse-Index erweitert Sparse-Check-out
Um derartige Arbeiten zu beschleunigen, verfügt Git bereits über die Funktion des teilweisen Check-outs (Sparse-Check-out). Dabei werden nur jene Komponenten heruntergeladen, mit denen wirklich gearbeitet wird. Zu der nun vorgestellten Neuerung heißt es: "Der Sparse-Index ist eine ebenso wichtige Komponente dieser Gleichung."
Der Git-Index ist eine wichtige Basisstruktur in der Versionskontrolle selbst. Darin werden die Unterschiede zwischen den geänderten Dateien auf dem eigenen Dateisystem und der tatsächlichen Commit-History gespeichert, hinzu kommen Dateisystem-Informationen. Das Problem: Bisher speichert der Index diese Daten für alle Dateien im Git-Head, nicht nur für jene aus dem Sparse-Check-out.
Mit dem Sparse-Index ändert sich das und es werden nur noch die Dateien aus dem Sparse-Check-out überwacht. Das soll zu teils massiven und spürbaren Geschwindigkeitsverbesserungen für Git-Kommandos führen. Das gilt für zahlreiche Kommandos, die alle auf den Index zugreifen. Dazu gehören unter anderem git merge, git rebase, git cherry-pick, und git revert, aber auch git commit oder git status.
Mit dem nun veröffentlichten Git 2.37 hinzugekommen sind git show, git sparse-checkout, und git stash, die nun alle über Integrationen für den Sparse-Index verfügen. Damit sollen die Arbeiten am Sparse-Index nun alle in Git integriert und nutzbar sein.
Weitere Details zu der aktuellen Version liefert die Ankündigung. Eine ausführliche Erklärung zu den Details des Sparse-Index sowie zu dessen Implementierung hat Github bereits im Herbst vergangenen Jahres veröffentlicht.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
- ohne Werbung
- mit ausgeschaltetem Javascript
- mit RSS-Volltext-Feed
Die Einleitung liest sich ja fast so, als käme Git von GitHub. Tatsächlich verlinkt...
Kommentieren