Die neue Version von Git 2.46 kommt nach drei Monaten Entwicklungszeit und in dieser neuen Version wurden mehrere Verbesserungen und bedeutende neue Funktionen integriert, wie beispielsweise die experimentelle Unterstützung für einen neuen Bitmap-Typ, Verbesserungen am experimentellen „reftable“ Backend, neue Kommandozeilenschnittstelle unter anderem für den Befehl „git config“.
Diese neue Version von Git 2.46 enthält Fehlerbehebungen von über 96 Mitwirkenden, 31 davon neu und somit die neue Version enthält 746 Änderungen.
Wichtigste neue Funktionen in Git 2.46
Die experimentelle Unterstützung für „Pseudofusion Accessibility Bitmap“ ist eine der wichtigsten Entwicklungen dieser Version und dieser neuen Art von Bitmap-Dateienund unterscheidet sich von der traditionellen Struktur „Barrierefreiheits-Bitmap“, indem Daten über Sätze von Commit-bezogenen Objekten nicht für jeden einzelnen Commit, sondern für mehrere Commits gleichzeitig gespeichert werden.
Daher ist diese Pseudomerge-Barrierefreiheits-Bitmap ermöglicht die Verwendung einer einzelnen Bitmap zum Definieren von Objekten in Commits verschiedener Zweige, Dies führt zu einer erheblichen Leistungsverbesserung, insbesondere bei großen Repositorys. Dadurch werden Vorgänge wie „Git Fetch“, „Git Rev-List“ und „Git Clone“ beschleunigt, da nicht mehr mehrere separate Bitmaps generiert werden müssen.
Git 2.46 führt außerdem mehrere wichtige Verbesserungen an seiner Befehlszeilenschnittstelle ein und bei der Verwaltung von Anmeldeinformationen und der Datenspeicherung. Die Befehlszeilenschnittstelle für den Befehl git config wurde neu gestaltet. Ersetzen unterschiedlicher Optionen wie –get, –get-all, –unset und –remove-section mit einer Reihe intuitiverer Unterbefehle. Um beispielsweise alle Repository-Konfigurationen anzuzeigen, können Sie jetzt den Befehl „Git-Konfigurationsliste«, und um den Inhalt eines bestimmten Parameters anzuzeigen, können Sie jetzt den Befehl « verwendengit config get ». Um die Ergebnisse weiter zu filtern, können Sie mit der Option „–regexp“ einen Filter angeben, der auf einem regulären Ausdruck basiert.
Darüber hinaus steht im Protokoll „Credential Helper“ hat Unterstützung für die neuen Felder „Authtype“ und „Credential“ hinzugefügt, sodass Sie Handler für HTTP-Authentifizierungssysteme erstellen können, die mehr tun als nur den Benutzernamen und das Passwort zu überprüfen, beispielsweise bei der Verwendung von Bearer Token in OAuth 2.0. Und vorher, Um mit solchen Authentifizierungssystemen arbeiten zu können, war es notwendig, vertrauliche Daten im Klartext anzugeben im http.extraHeader-Parameter. Außerdem, Das Protokoll bietet die Möglichkeit, den Status jedes Controllers beizubehalten von Anmeldeinformationen zur Unterstützung von Multi-Faktor-Authentifizierungsmethoden, die in Protokollen wie NTLM und Kerberos verwendet werden.
außerdemwurde die Entwicklung des experimentellen „reftable“-Backends verbessert zur effizienten Speicherung von Links zu Zweigen und Tags im Repository. Die neue Version fügt den Befehl „git refs migrate –ref-format=reftable“ hinzu, um vorhandene Repositorys in das „reftable“-Backend zu migrieren (zuvor war das Backend nur aktiviert, als das Repository initialisiert wurde).
Sowie, In Git 2.46 wurde der Prozess zum Konvertieren einiger Tests aus der Testsuite gestartet. zum Einsatz von Unit-Tests. Dies soll das Testen von Low-Level-Komponenten vereinfachen und die Effizienz des Testprozesses auf der Windows-Plattform erhöhen, was bei der Ausführung mehrerer Prozesse auf einer großen Plattform während der Ausführung von in einer Shell implementierten Tests zu hohen Overhead-Kosten führt Skripte.
Der andere Änderungen, die auffallen dieser neuen Version:
- Option „–no-advice“ zum Git-Befehl hinzugefügt, die alle Hinweis- und Hinweismeldungen deaktiviert, was nützlich sein kann, um zu verhindern, dass das Protokoll während eines automatisierten Git-Aufrufs mit unnötigen Informationen verstopft wird.
- Es wurde die Möglichkeit hinzugefügt, die „#RGB“-Darstellung zusätzlich zur „#RRGGBB“-Darstellung im Code zu verwenden, um Farbeinstellungen zu analysieren.
- Wenn Git Merge feststellt, dass der Index nicht aktualisiert werden kann (z. B. aufgrund von
zu einem anderen Prozess, der im Hintergrund dasselbe tut) - Ein CPP-Makro USE_THE_REPOSITORY_VARIABLE wird eingeführt, um den Übergang der Codebasis zu erleichtern, sodass sie weniger abhängig von der Verfügbarkeit der Singleton-Instanz the_repository ist.
- „git version –build-options“ meldet die Versionsinformationen von
- OpenSSL und andere Bibliotheken (falls verwendet) im Build.
- Speicherlecks in „git mv“ behoben
- Aktualisierte Unterstützung für die Befehlszeilenvervollständigung für zsh (in contrib/)
um zu verhindern, dass der interne Status der Shell-Interaktion des Endbenutzers ausgesetzt wird
Schließlich wenn Sie mehr darüber wissen möchtenkönnen Sie die Details in der überprüfen folgenden Link