Veröffentlichung des verteilten versionierten Systems . Git gehört zu den beliebtesten, zuverlĂ€ssigen und leistungsstĂ€rksten Versionsverwaltungssystemen und bietet flexible Mittel fĂŒr nicht-lineare Entwicklungen, die auf dem Branching und Merging von Zweigen basieren. Um die IntegritĂ€t der Historie und die WiderstandsfĂ€higkeit gegenĂŒber nachtrĂ€glichen Ănderungen zu gewĂ€hrleisten, werden alle vorherigen Historien in jedem Commit implizit gehasht, und es ist auch möglich, digitale Signaturen fĂŒr bestimmte Tags und Commits der Entwickler zu verwenden.
Im Vergleich zur vorherigen Version wurden in die neue Version 317 Ănderungen aufgenommen, die mit UnterstĂŒtzung von 58 Entwicklern erstellt wurden, von denen 13 zum ersten Mal an der Entwicklung beteiligt sind. Die wichtigsten :
- Eine Einstellung init.defaultBranch wurde hinzugefĂŒgt, die es ermöglicht, einen beliebigen Namen fĂŒr den Hauptzweig auszuwĂ€hlen, der standardmĂ€Ăig angewendet wird. Diese Einstellung wurde fĂŒr Projekte hinzugefĂŒgt, deren Entwickler sich an die Erinnerungen an Sklaverei stören, da das Wort âmasterâ als beleidigende Anspielung empfunden wird oder seelische Qualen und SchuldgefĂŒhle hervorruft. , und haben entschieden, standardmĂ€Ăig anstelle des Wortes âmasterâ das Wort âmainâ fĂŒr Hauptzweige zu verwenden. In Git bleibt es wie zuvor so, dass bei AusfĂŒhrung des Befehls âgit initâ standardmĂ€Ăig der Zweig âmasterâ erstellt wird, aber dieser Name kann jetzt geĂ€ndert werden. Zum Beispiel kann der Name des ursprĂŒnglichen Zweigs auf âmainâ geĂ€ndert werden, indem der folgende Befehl verwendet wird:
git config âglobal init.defaultBranch main
- Leistungsoptimierungen wurden hinzugefĂŒgt, die auf dem neuen Dateiformat commit-graph basieren, das zur Optimierung des Zugriffs auf Informationen ĂŒber Commits dient und UnterstĂŒtzung bietet. , einer wahrscheinlichkeitstheoretischen Struktur, die falsche Bestimmungen eines fehlenden Elements zulĂ€sst, aber das Ăbersehen eines bestehenden Elements ausschlieĂt. Diese Struktur ermöglicht eine deutliche Beschleunigung der Suche in der Ănderungsverlaufsgeschichte bei Verwendung der Befehle âgit log â â oder âgit blameâ.
- In der Kommandozeile âgit statusâ wird nun der Fortschritt des Vorgangs des partiellen Klonens (sparse-checkout) angezeigt.
- FĂŒr die Befehlsfamilie âdiffâ wurde eine neue Einstellung âdiff.relativeâ vorgeschlagen.
- Bei der ĂberprĂŒfung mit âgit fsckâ wird jetzt die Sortierung des Objektdiagramms bewertet und unsortierte Elemente erkannt.
- Die BenutzeroberflĂ€che fĂŒr die Bearbeitung vertraulicher Informationen in der Ausgabe der RĂŒckverfolgung wurde vereinfacht.
- Im Auto-VervollstĂ€ndigungs-Skript wurde die UnterstĂŒtzung fĂŒr die ErgĂ€nzung von Optionen des Befehls âgit switchâ hinzugefĂŒgt.
- In âgit diffâ wurde die UnterstĂŒtzung fĂŒr die Ăbertragung von Argumenten in verschiedenen Schreibweisen (âgit diff A..B Câ, âgit diff A..B CâŠDâ usw.) hinzugefĂŒgt.
- Im Befehl âgit fast-export âanonymizeâ wurde die Möglichkeit hinzugefĂŒgt, ein eigenes Mapping von Elementen festzulegen, um die Ausgabe fĂŒr Debugging-Zwecke benutzerfreundlicher zu gestalten.
- In âgit guiâ ist es jetzt erlaubt, ArbeitsbĂ€ume aus dem ursprĂŒnglichen Dialog zu öffnen.
- Im Protokoll âfetch/cloneâ wurde die Möglichkeit implementiert, den Client vom Server ĂŒber die Notwendigkeit zu informieren, im Voraus vorbereitete Pack-Dateien zusĂ€tzlich zu den ĂŒbermittelten verpackten Objekt-Daten zu laden.
- Die Arbeiten an der Umstellung auf den Hash-Algorithmus SHA-256 anstelle von SHA-1 werden fortgesetzt.
Quelle: opennet.ru
