Freigabe des Quellcode-Management-Systems Git 2.53

Die Veröffentlichung des verteilten Versionskontrollsystems Git 2.53 ist erfolgt. Git zeichnet sich durch hohe Leistung aus und bietet Werkzeuge fĂŒr nichtlineare Entwicklungen, die auf Branching und Merging basieren. Um die IntegritĂ€t der Historie und die WiderstandsfĂ€higkeit gegenĂŒber nachtrĂ€glichen Änderungen zu gewĂ€hrleisten, erfolgt eine implizite Hash-Berechnung der gesamten vorherigen Historie in jedem Commit, ebenso wie die Verifizierung durch digitale Signaturen der Entwickler fĂŒr einzelne Tags und Commits. Der Git-Code wird unter der GPLv2+ Lizenz veröffentlicht.

Im Vergleich zur vorherigen Version wurden 466 Änderungen in die Neuauflage aufgenommen, die von 70 Entwicklern beigetragen wurden (21 von ihnen haben erstmals an der Entwicklung von Git mitgewirkt). Wichtige Neuerungen:

  • Die Möglichkeit, die "geometric" Repository-Verpackungsstrategie ("git repack --geometric") auf teilweise geklonte externe Repositories, die im "promisor"-Modus arbeiten (fehlende Objekte werden bei Bedarf nachgeladen), anzuwenden, wurde hinzugefĂŒgt. Bei der Neuverpackung mit der Option "--geometric" werden Pack-Dateien mit der Erweiterung ".promisor" separat verarbeitet und verpackt. Die "geometric"-Strategie ermöglicht eine Reduzierung der Wartungszeiten großer Monorepositories, indem sie eine selektive Neuverpackung von Objekten durchfĂŒhrt und ressourcenintensive Operationen wie das ZusammenfĂŒhren aller Pack-Dateien vermeidet (die geometrische Progression der GrĂ¶ĂŸe der Pack-Dateien bleibt erhalten, wobei jede nachfolgende Pack-Datei mindestens doppelt so groß sein muss wie die vorherige).
  • Das Team von „git fast-import“ hat die Option „—signed-commits=strip-if-invalid“ hinzugefĂŒgt, um digitale Signaturen aus importierten Objekten zu entfernen, die nach einer Neuschreibung eines Teils der Repository-Historie ungĂŒltig geworden sind. Zuvor konnte man entweder alles importieren oder alle Signaturen entfernen, ohne zwischen gĂŒltigen und ungĂŒltigen zu unterscheiden. Die Option „strip-if-invalid“ ermöglicht es, Werkzeuge zu implementieren, die gĂŒltige Signaturen erhalten und Objekte mit ungĂŒltigen Signaturen neu signieren.
  • In der Ausgabe des Befehls „git repo structure“ wurde die Information ĂŒber die GrĂ¶ĂŸe aller erreichbaren Objekte im Repository nach ihren Typen ergĂ€nzt. Die Informationen werden nun leserlich mit Maßeinheiten angezeigt und getrennt fĂŒr die tatsĂ€chliche und die auf der Festplatte belegte GrĂ¶ĂŸe ausgegeben, was eine EinschĂ€tzung der GesamtgrĂ¶ĂŸe des Repositories auf der Festplatte ermöglicht. $ git repo structure | Repositorystruktur | Wert | | ——————— | ———- | | * Referenzen | | | * Anzahl | 1,78 k | | * Branches | 5 | | * Tags | 1,03 k | | * Remotes | 749 | | * Sonstige | 0 | | | | | * Erreichbare Objekte | | | * Anzahl | 421,37 k | | * Commits | 88,03 k | | * BĂ€ume | 169,95 k | | * Blobs | 162,40 k | | * Tags | 994 | | * Entpackte GrĂ¶ĂŸe | 7,61 GiB | | * Commits | 60,95 MiB | | * BĂ€ume | 2,44 GiB | | * Blobs | 5,11 GiB | | * Tags | 731,73 KiB | | * FestplattengrĂ¶ĂŸe | 301,50 MiB | | * Commits | 33,57 MiB | | * BĂ€ume | 77,92 MiB | | * Blobs | 189,44 MiB | | * Tags | 578,13 KiB |
  • Der Befehl „git maintenance“ wurde um den Unterbefehl „is-needed“ ergĂ€nzt, um Wartungsoperationen am Repository nur dann durchzufĂŒhren, wenn dies notwendig ist.
  • In der experimentellen Teamfunktion „git replay“ wird standardmĂ€ĂŸig das Aktualisieren von Referenzen in Transaktionen durchgefĂŒhrt, anstatt zu zeigen, wohin die Referenzen ohne Aktualisierung zeigen sollten.
  • Der Befehl „git blame“ ermöglicht nun die Auswahl des Algorithmus zur Bewertung von Unterschieden ĂŒber die Option „--diff-algorithm=“.
  • Der Befehl „git repo info“ erhielt die Option „--all“.
  • Die UnterstĂŒtzung fĂŒr symbolische Links wurde aus Git fĂŒr Windows auf die Windows-Plattform ĂŒbertragen.

In der vorherigen Ausgabe wurde eine Warnung zur standardmĂ€ĂŸigen Aktivierung der Komponentenerstellung in Rust in Git 2.53 hinzugefĂŒgt. TatsĂ€chlich wurden in Git 2.53 jedoch nur einige Verbesserungen der Rust-UnterstĂŒtzung (die Möglichkeit der Erstellung ohne GNU sed) hinzugefĂŒgt, wĂ€hrend die Erstellung mit Rust unter Verwendung von Makefile standardmĂ€ĂŸig deaktiviert bleibt (erfordert das Setzen des Flags WITH_RUST), und bei Verwendung von Meson wird sie automatisch aktiviert, wenn ein rustc-Compiler vorhanden ist. In Git 3.0 soll das Rust-Toolkit zu den obligatorischen Build-AbhĂ€ngigkeiten gehören.

Quelle: opennet.ru

Erwerben Sie zuverlĂ€ssiges Hosting fĂŒr Websites mit DDoS-Schutz, VPS VDS-Server đŸ”„ Kaufen Sie zuverlĂ€ssiges Hosting fĂŒr Websites mit DDoS-Schutz, VPS VDS-Server | ProHoster