Pred nekaj dnevi napovedana je bila izdaja nove razliÄice Git 2.3, eden najbolj priljubljenih, zanesljivih in visoko zmogljivih sistemov za nadzor razliÄic, ki ponuja prilagodljiva nelinearna razvojna orodja, ki temeljijo na razvejanju in zdruĹževanju.
V primerjavi s prejĹĄnjo razliÄico je bilo sprejetih 679 sprememb v novi razliÄici, pripravljeno s sodelovanjem 85 razvijalcev, od katerih jih je 23 prviÄ sodelovalo pri razvoju.
KljuÄne nove funkcije Git 2.31
V tej novi razliÄici Git 2.31 oznaÄen je dodatek ukaza "git vzdrĹževanje" da omogoÄa redno delo na sistemih, ki ne podpirajo cron. Na primer, z novim ukazom se lahko dogovorite, da obÄasno zaĹženete postopek pakiranja repozitorija, tako da vam ni treba Äakati, da se zaklepanje repozitorija dokonÄa, ko je pakiranje samodejno izvedeno, ko se zaĹžene veÄ ukazov.
Druga sprememba, ki izstopa, je ta dodana podpora za vodenje povratnega indeksa na disku (revendex) za datoteke paketov, saj Git shranjuje vse podatke v obliki predmetov, ki so shranjeni v loÄenih datotekah. Za izboljĹĄanje uÄinkovitosti dela s skladiĹĄÄem se predmeti dodatno poloĹžijo v datoteke paketov, v katerih so informacije predstavljene v obliki toka predmetov, ki jim sledijo eden za drugim.
Za vsako datoteko paketa ustvari se indeksna datoteka (.idx), ki omogoÄa uporabo identifikatorja predmeta za zelo hitro doloÄitev odmika v paketni datoteki, v kateri je ta objekt shranjen. Inverzni indeks (.rev), predlagan v Cilj Git 2.31 je poenostaviti postopek doloÄanja identifikatorja predmeta iz informacij o lokaciji predmeta v datoteki paketa.
Prej je bila taka pretvorba izvedena sproti med analizo iz datoteke paketa in je bil shranjen samo v spominu, ki ni dovolil ponovne uporabe omenjenih indeksov in je bil prisiljen vsakiÄ generirati indeks. Postopek gradnje indeksa je zmanjĹĄa za izdelavo niza parov poloĹžajev objektov in razvrĹĄÄanje po poloĹžaju, kar je za velike datoteke paketov lahko dolgotrajno.
Po drugi strani pa to lahko najdemo dodane so optimizacije zmogljivosti glede na videz v datoteÄni obliki potrditvene lestvice, ki se uporablja za optimizacijo dostopa do informacij o potrditvah, novi podatki o ĹĄtevilu potrditev, ki jih lahko uporabimo za pospeĹĄitev dodatnih operacij s potrditvami.
Poleg tega, dodana moĹžnost preglasitve privzetega imena veje v novih skladiĹĄÄih (konfiguracija init.defaultBranch). Pri dostopu do zunanjih repozitorijev poskuĹĄa git preveriti vejo, na katero kaĹže HEAD, to je, Äe zunanji streĹžnik privzeto uporablja vejo "main", bo operacija "git clone" poskuĹĄala najti "main" lokalno.
Od ostalih sprememb ki izstopajo:
- MoĹžnost "âdisk-use" dodano ukazu "git rev-list" za prikaz povzetka velikosti predmetov.
- Podpora za zastarelo knjiĹžnico regularnih izrazov PCRE1 je bila odstranjena.
- Zagotovljena moĹžnost prisilne prepovedi uporabe bliĹžnjic, ki deluje neodvisno od algoritma zgoĹĄÄevanja. Prepoved je omogoÄena z dodelitvijo vrednosti "ne" parametru core.abbrev.
- MoĹžnost "âpath-format" je bila dodana ukazu "git rev-parse", da izrecno definira izhod relativne ali absolutne poti.
- Bash-ovi skripti za samodokonÄanje olajĹĄajo dodajanje pravil dokonÄanja za podkomande po meri "git".
- V ukaz "git bundle" je dodana moĹžnost "âstdin" za branje povezav iz standardnega vhodnega toka.
- MoĹžnosti "âleft-only" in "âright-only" sta bili dodani ukazu "git range-diff", da se prikaĹže samo ena stran primerjanega obsega.
- Dodana moĹžnost "âskip-to = ÂťNa ukazÂŤ git difftool Âťza nadaljevanje prekinjene seje s poljubne poti.
- Kodeks ravnanja (Code of Conduct), ki opredeljuje osnovna naÄela za reĹĄevanje sporov med razvijalci, je bil posodobljen na razliÄico 2.0 (prej je bila uporabljena razliÄica 1.4).
KonÄno Äe Ĺželite vedeti veÄ o tem, se lahko posvetujete naslednjo povezavo.