Izdaja porazdeljenega sistema za nadzor vira Git 2.23

Predložil izdaja porazdeljenega sistema za nadzor vira Git 2.23.0. Git je eden najbolj priljubljenih, zanesljivih in visoko zmogljivih sistemov za nadzor različic, ki zagotavlja prilagodljiva nelinearna razvojna orodja, ki temeljijo na razvejanju in združevanju. Za zagotovitev celovitosti zgodovine in odpornosti na retroaktivne spremembe se uporablja implicitno zgoščevanje celotne prejšnje zgodovine v vsaki objavi, možno pa je tudi certificirati posamezne oznake in objave z digitalnimi podpisi razvijalcev.

V primerjavi s prejšnjo izdajo je nova različica vsebovala 505 sprememb, pripravljenih s sodelovanjem 77 razvijalcev, od tega jih je 26 pri razvoju sodelovalo prvič. Osnovno inovacije:

  • Uvedena sta eksperimentalna ukaza »git switch« in »git restore« za ločevanje ohlapno povezanih zmožnosti »git checkout«, kot je manipulacija vej (preklapljanje in ustvarjanje) in obnavljanje datotek v delovnem imeniku (»git checkout $commit – $filename«) ali takoj v uprizoritvenem območju (»—uprizoritev«, nima analogije v »git checkout«). Treba je omeniti, da za razliko od »git checkout« »git restore« odstrani nesledene datoteke iz imenikov, ki se obnavljajo (»--no-overlay« privzeto).
  • Dodana možnost »git merge –quit«, ki podobno kot »-abort« ustavi postopek združevanja vej, vendar pusti delovni imenik nedotaknjen. Ta možnost je lahko uporabna, če bi bilo bolje, da bi bile nekatere spremembe, narejene med ročnim spajanjem, izdane kot ločena potrditev.
  • Ukazi "git clone", "git fetch" in "git push" zdaj upoštevajo prisotnost potrditev v povezanih repozitorijih (namestniki);
  • Dodano možnosti »git blame —ignore-rev« in »—ignore-revs-file« vam omogočata, da preskočite potrditve, ki naredijo manjše spremembe (na primer popravke oblikovanja);
  • Dodana možnost »git cherry-pick —skip« za preskok sporne objave (spomnjen analog zaporedja »git reset && git cherry-pick —continue«);
  • Dodana nastavitev status.aheadBehind, ki trajno popravi možnost »git status -[no-]ahead-behind«;
  • Od te izdaje "git log" privzeto upošteva spremembe, ki jih naredi mailmap, podobno kot že git shortlog;
  • Operacija posodabljanja eksperimentalnega predpomnilnika grafa potrditve (core.commitGraph), predstavljenega v 2.18, je bila znatno pospešena. Hitrejši tudi git for-each-ref pri uporabi več predlog in zmanjšano število klicev auto-gc v »git fetch —multiple«;
  • "git branch --list" zdaj vedno prikazuje ločeno GLAVO na samem začetku seznama, ne glede na jezik.

Vir: opennet.ru

Dodaj komentar