Zuletzt aktualisiert am

Git 2.54 mit neuem Befehl „git history“ veröffentlicht

Git 2.54 führt standardmäßig den experimentellen Befehl „git history“, konfigurierbare Hooks und eine effizientere Repository-Pflege ein.
Eine Übersetzung von 🇬🇧 Linuxiac.com

Mehr als zwei Monate nach der Veröffentlichung von Version 2.53 hat Git, ein in der Softwareentwicklung weit verbreitetes verteiltes Versionskontrollsystem, die Version 2.54 herausgebracht.

Das auffälligste Feature ist der experimentelle Befehl git history, der dazu dient, das Umschreiben der Historie zu vereinfachen. Er unterstützt derzeit die Operationen reword und split, mit denen Benutzer Commit-Meldungen aktualisieren oder Commits aufteilen können, ohne ein vollständiges interaktives Rebase durchführen zu müssen.

Dies ist von Bedeutung, da git rebase -i zwar leistungsstark ist, für kleinere Änderungen jedoch unnötig komplex sein kann. Im Gegensatz dazu aktualisiert git history reword Commit-Meldungen direkt, und git history split verschiebt ausgewählte Änderungen interaktiv in einen neuen übergeordneten Commit. Der neue Befehl verändert weder den Arbeitsbaum noch den Index und kann auf Bare-Repositorys angewendet werden.

Eine weitere wichtige Neuerung ist die Einführung konfigurationsbasierter Hooks. Bisher waren Git-Hooks auf Skripte im Verzeichnis .git/hooks oder einen gemeinsamen core.hooksPath beschränkt, was die Wiederverwendung über verschiedene Repositorys hinweg erschwerte. In Git 2.54 können Hooks in Konfigurationsdateien definiert werden, was die Verwaltung gemeinsamer Hook-Funktionen auf Benutzer-, System- oder Repository-Ebene vereinfacht.

Die interne Hook-Verarbeitung von Git wurde ebenfalls aktualisiert, um dieses neue Modell zu unterstützen. Mehrere integrierte Hooks nutzen nun die aktualisierte Hook-API, wodurch die Vorteile der konfigurationsbasierten Verwaltung auf das gesamte Hook-System von Git ausgeweitet werden.

Was die Wartung des Repository betrifft, verwendet Git 2.54 nun geometrisches Repacking als Standardstrategie für manuelle Wartungsläufe. Infolgedessen verfolgt der Befehl git maintenance run standardmäßig einen inkrementelleren Repacking-Ansatz, was die Wartungskosten senken und die Datenstrukturen auf dem neuesten Stand halten kann.

Darüber hinaus führt Git 2.54 auch einige wertvolle Verbesserungen ein. Der interaktive git add -p Workflow bietet nun einen besseren Überblick über zuvor akzeptierte oder übersprungene Blöcke und verfügt über die Option --no-auto-advance, um nach der letzten Entscheidung zu einem Block bei der aktuellen Datei zu bleiben.

Darüber hinaus verbessert die Version das HTTP-Transportverhalten von Git: Git behandelt nun HTTP-429-Antworten („Too Many Requests“) durch erneute Versuche der Anfragen, anstatt sie als schwerwiegende Fehler zu betrachten. Dieses Verhalten berücksichtigt den Retry-After-Header des Servers und umfasst neue Konfigurationsoptionen für die Anzahl der Wiederholungsversuche und das Timing.

Auch die Workflows für Teilklone wurden verbessert. Der experimentelle Befehl git backfill akzeptiert nun Revisionsbereiche und Pfadangaben, sodass Benutzer fehlende Blobs für ein bestimmtes Historiesegment oder einen Teil des Baums abrufen können, anstatt alle Daten von HEAD zu holen.

Weitere Neuerungen in Git 2.54 umfassen die Unterstützung für Nicht-ASCII-Aliasnamen, Erweiterungen für git log -L sowie Verbesserungen an git replay, das nun auch den neuen Befehl git history unterstützt. Insgesamt konzentriert sich diese Version darauf, die täglichen Arbeitsabläufe in verschiedenen Git-Anwendungsfällen zu verfeinern, anstatt eine einzige größere Änderung einzuführen.

Weitere Details zu allen Änderungen in Git 2.54 finden Sie in der Release-Ankündigung.

 

Spendieren Sie Bobby einen ☕ Ko-fi

s3n🧩net wünscht viel Vergnügen

 

Comments