Utgivelse av det distribuerte kildekontrollsystemet Git 2.23
Introdusert utgivelse av det distribuerte kildekontrollsystemet git 2.23.0. Git er et av de mest populære, pålitelige og høyytende versjonskontrollsystemene som gir fleksible ikke-lineære utviklingsverktøy basert på forgrening og sammenslåing av grener. For å sikre integriteten til historien og motstanden mot endringer i ettertid, brukes implisitt hashing av hele den tidligere historien i hver forpliktelse, det er også mulig å verifisere de digitale signaturene til utviklerne av individuelle tagger og forpliktelser.
Sammenlignet med forrige utgivelse inkluderte den nye versjonen 505 endringer, utarbeidet med deltagelse av 77 utviklere, hvorav 26 deltok i utviklingen for første gang. Grunnleggende innovasjoner:
Eksperimentelle "git switch" og "git restore"-kommandoer introduseres for å skille løst koblede "git checkout"-funksjoner, slik som grenmanipulasjon (bytte og opprette) og gjenoppretting av filer i arbeidskatalogen ("git checkout $commit - $filename") eller umiddelbart i oppstillingsområdet ("—staging", har ingen analog i "git checkout"). Det er verdt å merke seg at, i motsetning til "git checkout", fjerner "git restore" usporede filer fra katalogene som gjenopprettes ("--no-overlay" som standard).
Lagt til alternativet "git merge -quit", som, i likhet med "-avbryt", stopper prosessen med å slå sammen grener, men lar arbeidskatalogen være urørt. Dette alternativet kan være nyttig hvis noen av endringene som gjøres under en manuell sammenslåing, er å foretrekke å bli utstedt som en separat forpliktelse.
Kommandoene "git clone", "git fetch" og "git push" tar nå hensyn til tilstedeværelsen av commits i koblede repositories (veksler);
La til alternativene "git blame —ignore-rev" og "—ignore-revs-file" lar deg hoppe over commits som gjør mindre endringer (for eksempel formateringsfikser);
Lagt til "git cherry-pick —hopp"-alternativet for å hoppe over en motstridende commit (en memorert analog av "git reset && git cherry-pick -fortsett"-sekvensen);
Lagt til status.aheadBehind-innstillingen, som permanent fikser "git status -[no-]ahead-behind" alternativet;
Fra og med denne utgivelsen tar "git log" som standard hensyn til endringer gjort av mailmap, på samme måte som git shortlog allerede gjør det;
Oppdateringsoperasjonen av den eksperimentelle cachen til commit-grafen (core.commitGraph) introdusert i 2.18 har blitt betydelig akselerert. Gjorde også git for-each-ref raskere ved bruk av flere maler og reduserte antall kall til auto-gc i "git fetch —multiple";
"git branch --list" viser nå alltid løs HEAD helt i begynnelsen av listen, uavhengig av lokalitet.