Izdanje distribuiranog sistema izvorne kontrole Git 2.23
Poslao oslobađanje distribuiranog sistema kontrole izvora git 2.23.0. Git je jedan od najpopularnijih, najpouzdanijih i sistema za kontrolu verzija visokih performansi koji pruža fleksibilne nelinearne razvojne alate zasnovane na grananju i spajanju grana. Da bi se osigurao integritet istorije i otpornost na promene u retrospektivi, koristi se implicitno heširanje celokupne prethodne istorije u svakom urezivanju, takođe je moguće proveriti digitalne potpise programera pojedinačnih oznaka i urezivanja.
U odnosu na prethodnu verziju, nova verzija je uključivala 505 izmjena, pripremljenih uz učešće 77 programera, od kojih je 26 prvi put učestvovalo u razvoju. Basic inovacije:
Eksperimentalne naredbe "git switch" i "git restore" uvedene su za razdvajanje slabo povezanih "git checkout" mogućnosti, kao što je manipulacija granama (prebacivanje i kreiranje) i vraćanje datoteka u radni direktorij ("git checkout $commit - $filename") ili odmah u scenskom području (“—staging”, nema analoga u “git checkout-u”). Vrijedi napomenuti da, za razliku od "git checkout", "git restore" uklanja datoteke koje nisu praćene iz direktorija koji se vraćaju ("--no-overlay" prema zadanim postavkama).
Dodata opcija “git merge –quit” koja, slično kao i “-abort”, zaustavlja proces spajanja grana, ali ostavlja radni direktorij netaknutim. Ova opcija može biti korisna ako bi bilo poželjno da se neke promjene napravljene tokom ručnog spajanja izdaju kao zasebno urezivanje.
Naredbe "git clone", "git fetch" i "git push" sada uzimaju u obzir prisustvo urezivanja u povezanim spremištima (zamjenici);
Dodano opcije “git blame —ignore-rev” i “—ignore-revs-file” omogućavaju vam da preskočite urezivanje koji unosi manje promjene (na primjer, popravke formatiranja);
Dodata opcija “git cherry-pick —skip” za preskakanje konfliktnog urezivanja (zapamćeni analog sekvence “git reset && git cherry-pick —continue”);
Dodata postavka status.aheadBehind, koja trajno popravlja opciju “git status -[no-]ahead-behind”;
Od ovog izdanja, "git log" podrazumevano uzima u obzir promene koje je napravio mailmap, slično kao što git shortlog već radi;
Operacija ažuriranja eksperimentalne keš memorije grafa urezivanja (core.commitGraph) uvedena u 2.18 je značajno ubrzana. Takođe je učinio git za-svaki-ref bržim kada se koristi više šablona i smanjio broj poziva auto-gc-u u „git dohvati —više“;
"git grana --list" sada uvijek prikazuje odvojenu GLAVU na samom početku liste, bez obzira na lokalizaciju.