Git 2.43 Baner
Nakon tri mjeseca razvoja, Git projekat je nedavno najavio izlazak nove verzije Git 2.43, koja dolazi s novim funkcijama i ispravkama grešaka od više od 80 saradnika, od kojih je 17 potpuno novih.
Git 2.43 je uveo opcije "--filter" i "--filter-to" u naredbu "git repack" . Ove opcije vam omogućavaju da ponovo zapakujete repozitorij uzimajući u obzir navedeni filter objekta.
Dodatno, ako je potrebno, objekti koji ne zadovoljavaju filter mogu se premjestiti na zasebnu lokaciju. Ove opcije su korisne za particioniranje spremišta na osnovu određenih kriterija, kao što je uklanjanje nepotrebnih ili prevelikih objekata. Uprkos ovim modifikacijama, očuvana je mogućnost pristupa svim dijelovima spremišta kroz djelomično kloniranje.
Još jedna značajna promjena u ovoj novoj verziji git repacka je ta što sada podržava rad s više Cruft paketa, kao i dijeljenje sadržaja repozitorija pomoću objektnog filtera.
Pored toga, vrijedna je pažnje mogućnost rada s više bundle datoteka koje sadrže informacije o nedostupnim objektima, poznatim kao "cruft bundleovi". Ove datoteke nisu referencirane u repozitoriju; to jest, nisu povezane kroz grane ili oznake. Uvođenjem nove opcije `git repack --max-cruft-size`, sada je moguće odrediti maksimalnu veličinu jedne bundle datoteke i segmentirati bazu podataka nedostupnih objekata u nekoliko manjih bundle datoteka.
Korištenje nekoliko malih paketnih datoteka umjesto jednog velikog može rezultirati primjetnim smanjenjem I/O operacija pri ponovnom pakovanju spremišta s velikim brojem nedostupnih objekata. To je zato što svaka operacija neće zahtijevati prepisivanje svih podataka, čime se poboljšava efikasnost procesa.
Također je napomenuto da je naredba for-each-ref ažurirana novim funkcijama vezanim za formatiranje , jer korisnici sada mogu reći naredbi git for-each-ref da primijeni bilo koje .mailmap pravilo navedeno u njihovom repozitoriju na prilagođene specifikatore formata, uključujući %(authorname), %(committeremail) i druge.
Nadalje, napominje se da je zadana poruka dnevnika koju kreira "git revert", prilikom vraćanja commita koji zapisuje poništavanje, modificirana kako bi se potaknulo ljude da bolje opišu složene situacije "poništavanja" vlastitim riječima.
Druge značajne promjene u ovoj novoj verziji uključuju:
- Učinjene su značajne promjene u Gitovom CI sistemu, omogućavajući prekid tekućih CI izvođenja kada dođe do novih guranja u grane sa CI provjerama u toku.
- Git sada također može koristiti i prijaviti rezultate Coverityju, alatu za statičku analizu iz Synopsys-a.
- «git merge-file» sada ima način da pročita tri varijante sadržaja koji se spajaju iz blob objekata.
- Dodata je mogućnost primjene pravila .mailmap za određivanje formata specificiranog pomoću opcije –Format, kako "%(authorname)" i "%(committeremail)" u "git for-each-ref» i slične komande.
- Sada opcije –rfc i –prefiks subjekta rade zajedno
- Poruka napisana u davna vremena spriječila je uklanjanje grane, govoreći da je već zabilježena na drugom mjestu. Ali sada se predlaže da se grana koja se dijeli na dva dijela ili ponovo bazira kao grana koja se odjavi i zaštiti od modifikacije istom putanjom koda. Poruka je preformulisana tako da kaže da je grana "u upotrebi" kako bi se izbjegla zabuna.
- «git indeks ažuriranja»sada imate opciju»–show-index-version» da biste provjerili verziju formata indeksa koji koristi indeksna datoteka na disku.
- Nove funkcije prilagođenih git formata dnevnika, omogućavajući korisnicima da dodaju dekoracije pomoću novog čuvara mjesta %(ukrasi) , koji dolazi s opcijskim modifikatorima kao što su prefiks, sufiks, separatori i još mnogo toga.
Konačno, ako ste zainteresirani da saznate više, detalje možete pronaći na sljedećem linku.