Software::Entwicklung
Git 2.23.0 vereinfacht Checkouts
Die Git-Entwickler haben ihre unter der GPL stehende Versionsverwaltung in der Version 2.23.0 freigegeben. Insgesamt flossen seit der letzten Version 505 Neuerungen und Fehlerkorrekturen in das Projekt ein. An ihnen wirkten 77 Entwickler mit, von denen 26 erstmals erstmals etwas zum Projekt beisteuerten.
git-scm.com
In
Git 2.23 sind die neuen Kommandos
git switch
und
git restore
zu finden, die vielleicht eine Alternative zu
git checkout
werden können. Mit ihnen soll es einfacher werden, zwischen verschiedenen Entwicklungszweigen zu wechseln oder einzelne Entwicklungsstände wieder herzustellen. Aktuell sind beide Kommandos noch experimentell. Git 2.23 sortiert Ergebnisse von
git for-each-ref
spürbar schneller und kann Referenzen von einem Alternate als Teil der Verbindungsprüfung verwenden.
git merge
bekam eine neue
--quit
-Option, die sich wie ein
--abort
verhält, also den Merge als nicht erfolgreich kennzeichnet, aber die aktuelle Arbeitskopie nicht verändert. Mit
git cherry-pick --skip
können Entwickler nun einzelne Änderungen in einer cherry-pick-Sequenz überspringen und mit
git multi-pack-index --repack
und
--expire
Objekte in einem MIDX (Sammlung von Packfiles und darin enthaltenen Objekten) in mehrere kleinere Packfiles schieben oder Referenzen auf Packfiles bereinigen.
Commit Graph Chains beschleunigen in Git 2.23 die History-Traversals. Mit ihnen müssen die History-Traversals nicht mehr komplett neu geschrieben werden. Sollten die Ketten zu lang werden, lassen sie sich zusammenführen. Zudem können sie sich auch über mehrere Repositorien erstrecken. mit status.aheadBehind
können Entwickler einstellen, ob git status
standardmäßig berechnen soll, ob ihr Zweig dem verfolgten Remote-Zweig hinterherhinkt oder voraus ist. git log
schreibt nun wie git shortlog
die .mailmap um und es gibt ein komplett neu geschriebenes Tutorial für Entwickler, die eigene Funktionalitäten zu Git beisteuern möchten. Weitere Neuerungen, Änderungen und Fehlerkorrekturen sind in der Ankündigung enthalten. Die aktuelle Version ist als Tarball oder via Git erhältlich.