Tika prezentēta jaunās Git 2.22 versijas izlaišana. Git ir viena no populārākajām, uzticamākajām un augstas veiktspējas versiju kontroles sistēmām , un tā nodrošina arī izstrādes rīkus.
Lai nodrošinātu vēstures integritāti un noturību pret izmaiņām aizmuguriski, katrā saistībā tiek izmantota netieša visas iepriekšējās vēstures jaukšana, kā arī var pārbaudīt atsevišķu tagu un saistību izstrādātāju digitālos parakstus.
Salīdzinot ar iepriekšējo versiju , jaunajā versijā tika veiktas 745 izmaiņas, un tās sagatavošanā piedalījās 74 izstrādātāji, no kuriem 18 izstrādē piedalījās pirmo reizi.
Git 2.22 galvenās jaunās funkcijas
Lai parādītu pašlaik izmantoto lokālo atzaru, tagad varat izmantot komandu "git branch-show-current ".
Turklāt kopš 1.18 versijas ir pieejams jaunais pārsūtīšanas režīms izmaiņu kopai " git rebase --rebase-merges " , kas aizstāj iepriekšējo opciju " --preserve-merges ", kura tagad ir atzīmēta kā novecojusi.
Lai saglabātu atzara struktūru pārnēsājamā atzarā, varēja izmantot opciju " --preserve-merges ", kas, palaižot interaktīvā režīmā ( git rebase -i --preserve-merges ), ļāva rediģēt izmaiņu vēsturi, bet negarantēja pilnīgu repozitorija struktūras saglabāšanu.
Pēcteča režīms " --rebase-merges " ļauj saglabāt pārnēsājamās filiāles izmaiņu struktūru, vienlaikus nodrošinot pilnu interaktīvu darbību komplektu, tostarp izmaiņu dzēšanu, pārkārtošanu un pārdēvēšanu.
Piemēram, " --rebase-merges " ļauj veikt izmaiņu izdarīšanu no atdalītas filiāles uz jaunāku galveno filiāli, vienlaikus saglabājot filiāles struktūru pārnēsājamajā filiālē un veicot dažas izmaiņas piezīmēs, lai tās varētu izdarīt tūlītējā izmaiņu izdarīšanas režīmā.
Operācija " git rebase " tiek izmantota, lai aizstātu virkni izmaiņu ar jaunu pamata izmaiņu, piemēram, lai mainītu atsevišķu atzaru, kurā tiek izstrādāta kāda jauna funkcija, uz pašreizējā galvenās atzara stāvokli, ieskaitot visus labojumus, kas pievienoti pēc atzara.
Cildens aizmugures atbalsts
` git bisect` atskaite ir atjaunināta un tagad ir vieglāk lasāma , savukārt ` git mergetool` tagad atbalsta arī Sublime Merge (` smerge` ) kā aizmugursistēmu. Git izsauc jauno ` post-index-change` āķi , kad mainās saglabātais indeksa fails, kas palīdz ar virtualizētiem darba kokiem.
Turklāt " git difftoo l" tagad darbojas arī ārpus repozitorija un atceļ " git checkout -m <other> ", ja tā konstatē atšķirību starp HEAD un indeksu.
Tā kā indeksa iesaiņošana klonēšanas procesā dažreiz prasa ilgu laiku, izstrādātāji jums ir devuši progresa joslu.
Vienlaikus, pateicoties jaunajai ` switch` servera opcijai, ` git clone` sazinās, izmantojot protokola 2. versiju . Vairākas funkcijas uzlabo koda pabeigšanu, un izstrādātāji ir strādājuši arī pie trace2 izsekošanas rīka.
Jaunais Trace2 izsekošanas mehānisms piedāvā elastīgāku un strukturētāku izvades formātu. Trace2 ļauj apkopot darbības telemetrijas un veiktspējas datus detalizētākai analīzei un atkļūdošanai (lietotājs piešķir kontrolieri; dati netiek sūtīti ārēji).
Veiktspēja un attīstība
Git iebūvētais diferenciālais mehānisms ir pārrakstīts un tagad atbalsta ` git commit-tree` , un ` pack-redundant` API un ` git multi-pack-index verify` tagad darbojas ātrāk krātuvēs, kurās ir daudz pakotņu failu. Izstrādātājiem ir atjaunināts arī testēšanas ietvars.
Nesen C valodā tika ieviesta funkcija ` git stash` funkcijai ` git rebase` . C ieviešana tika atjaunināta , lai novērstu Git atkārtotu viena un tā paša faila pārrakstīšanu. ` git diff` tagad darbojas arī ātrāk īpašos scenārijos, kuros tā apkopo informāciju par blobiem. Visbeidzot, `git clone` paātrina savienojuma procesu.
Pievienota arī iespēja filtrēt, kad tiek parādīti paplašinājumiem “git log” tagi, kas pievienoti saistībām.