Veröffentlichung des verteilten Systems zur Verwaltung von Quelltexten Git 2.23

PrĂ€sentiert Veröffentlichung des verteilten versionierten Systems Git 2.23.0. Git ist eines der beliebtesten, zuverlĂ€ssigsten und leistungsstĂ€rksten Versionskontrollsysteme, das flexible Mittel fĂŒr die nichtlineare Entwicklung bereitstellt, die auf Branching und Merging basieren. Zur GewĂ€hrleistung der IntegritĂ€t der Historie und der WiderstandsfĂ€higkeit gegenĂŒber nachtrĂ€glichen Änderungen wird die gesamte vorherige Historie in jedem Commit implizit gehasht. Zudem ist es möglich, digitale Signaturen fĂŒr bestimmte Tags und Commits durch die Entwickler zu verifizieren.

Im Vergleich zur vorherigen Veröffentlichung wurden in die neue Version 505 Änderungen aufgenommen, die von 77 Entwicklern vorbereitet wurden, von denen 26 erstmals an der Entwicklung teilgenommen haben. Die wichtigsten Neuheiten:

  • Die experimentellen Befehle „git switch“ und „git restore“ wurden eingefĂŒhrt, um die wenig miteinander verbundenen Funktionen von „git checkout“ aufzuteilen, wie z. B. das Verwalten von Branches (Wechseln und Erstellen) sowie das Wiederherstellen von Dateien im Arbeitsverzeichnis („git checkout $commit — $filename“) oder direkt im Staging-Bereich („—staging“, kein Äquivalent in „git checkout“). Es ist erwĂ€hnenswert, dass „git restore“ im Gegensatz zu „git checkout“ untracked Dateien aus den wiederherzustellenden Verzeichnissen entfernt („—no-overlay“ ist standardmĂ€ĂŸig aktiv).
  • Die Option „git merge —quit“ wurde hinzugefĂŒgt, die Ă€hnlich wie „—abort“ den Merge-Prozess stoppt, dabei jedoch das Arbeitsverzeichnis unangetastet lĂ€sst. Diese Option kann nĂŒtzlich sein, wenn einige der Änderungen, die wĂ€hrend eines manuellen Merges vorgenommen wurden, lieber als separater Commit erfasst werden sollten.
  • Die Befehle „git clone“, „git fetch“ und „git push“ berĂŒcksichtigen nun die vorhandenen Commits in den verknĂŒpften Repositories (alternates);
  • Es wurden hinzugefĂŒgt die Optionen „git blame —ignore-rev“ und „—ignore-revs-file“, die es ermöglichen, Commits zu ĂŒberspringen, in denen unwesentliche Änderungen vorgenommen wurden (z. B. Formatierungsanpassungen);
  • Die Option „git cherry-pick —skip“ wurde hinzugefĂŒgt, um einen konfliktbehafteten Commit zu ĂŒberspringen (vergleichbar mit der gespeicherten Sequenz „git reset && git cherry-pick —continue“).
  • Eine Einstellung fĂŒr status.aheadBehind wurde hinzugefĂŒgt, die die Option „git status —[no-]ahead-behind“ dauerhaft festlegt.
  • Ab dieser Version berĂŒcksichtigt „git log“ standardmĂ€ĂŸig die Änderungen, die im mailmap vorgenommen wurden, Ă€hnlich wie es bereits bei git shortlog der Fall ist.
  • Die Aktualisierung des in Version 2.18 experimentell eingefĂŒhrten Commit-Graph-Caches (core.commitGraph) wurde erheblich beschleunigt. Auch git for-each-ref wurde bei der Verwendung mehrerer Vorlagen beschleunigt, und die Anzahl der auto-gc-Aufrufe in „git fetch —multiple“ wurde reduziert.
  • „git branch —list“ zeigt nun immer den detached HEAD ganz oben in der Liste an, unabhĂ€ngig von der Locale.

Quelle: opennet.ru

Kaufen 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