Versionsverwaltung: Git 2.26 stellt das Transportprotokoll um

Version 2.26 des verteilten Versionskontrollsystems setzt standardmäßig auf Protocol v2 und ergänzt Sparse Checkouts.

In Pocket speichern vorlesen Druckansicht 1 Kommentar lesen
Versionsverwaltung: Git 2.26 erweitert
Lesezeit: 3 Min.
Von
  • Rainald Menge-Sonnentag
Inhaltsverzeichnis

Zwei Monate nach dem Release von Git 2.25 haben die Entwickler nun Version 2.26 des Versionsverwaltungssystems herausgegeben. Die Neuerungen knüpfen unter anderem bei zwei zuvor veröffentlichten Erweiterungen an: dem Protocol v2 von 2018 und den im letzten Release eingeführten vereinfachten Sparse Checkouts.

Die Version 2 des Transportprotokolls (Protocol v2) hatte das Git-Team im Mai 2018 vorgestellt und in Version 2.18 eingeführt. Nach knapp zwei Jahren als optionales Protokoll ist es in Git 2.26 nun standardmäßig aktiviert. Version 2 behebt einige Schwächen des ursprünglichen Protokolls, das bereits seit 2005 im Einsatz ist und trotz Ergänzungen stets rückwärtskompatibel bleiben musste.

Vor allem kann der Client nun beim ersten Request an den Server angeben, für welche Referenzen er sich interessiert, und der Server filtert seine Antwort entsprechend. Beim ursprünglichen Protokoll hat der Server stets alle Branches, Tags und weiteren Referenzen geliefert und damit die Kommunikation länger blockiert. Ein Client, der nur am Master Branch interessiert war, musste unnötig große Datenmengen empfangen.

Clients, die das neue Protokoll kennen, können nicht nur mit Servern kommunizieren, die ebenfalls mit Protocol v2 arbeiten. Für das Zusammenspiel mit älteren Servern ist ein Fallback auf das alte Protokoll vorgesehen. Der Übergang erfolgt damit für Entwickler vollständig transparent. Die fast zweijährige Übergangsphase von der Einführung des neuen Protokolls bis zu dessen standardmäßigen Einsatz sollte vor allem Early Adopters genügend Zeit zum Anpassen und Beheben von Fehlern geben.

Git 2.25 hat einen eigenen Befehl eingeführt, um auf komfortable Weise Sparse Checkouts zu definieren, also das Anlegen nicht vollständiger Arbeitskopien. Über den Befehl sparse-checkout set lassen sich passende Muster definieren, statt wie zuvor umfangreiche Konfigurationen pflegen zu müssen.

Das aktuelle Git-Release erweitert den Befehl um den neuen Unterbefehl add, mit denen sich einzelne Verzeichnisse hinzufügen lassen, ohne jedes Mal wie bei set die komplette Verzeichnisliste angeben zu müssen.

Zu den weiteren nennenswerten Neuerungen gehört die Erweiterung der Konfiguration: In Git 2.26 lässt sich über config --show scope der Scope für einzelne Konfigurationseinstellungen abfragen. Der Unterbefehl arbeitet ähnlich wie --show-origin, und die beiden lassen sich kombinieren.

Für die Bedienung über die Kommandozeile ist unter anderem das Erweitern der Autovervollständigung für einzelne Unterbefehle zu nennen. Außerdem kennt Git nun für die sieben Basisfarben eine hellere Variante wie brightred.

Insgesamt sind erneut gut 500 Commits von 64 Leuten in das aktuelle Release der ursprünglich von Linus Torvalds ins Leben gerufenen Open-Source-Software eingeflossen. Die vollständige Liste der Neuerungen in Git 2.26 lassen sich den Release Notes entnehmen. Wie üblich bietet der GitHub-Blog eine ausführlichere Beschreibung der Hightlights zu finden. (rme)