Liberigo de distribuita fontkontrolsistemo Git 2.23

Enkondukita liberigo de la distribuata fontkontrolsistemo git 2.23.0. Git estas unu el la plej popularaj, fidindaj kaj alt-efikecaj versikontrolaj sistemoj, provizante flekseblajn ne-liniajn evoluilojn bazitajn sur disbranĉigo kaj kunfandado. Por certigi la integrecon de historio kaj reziston al retroaktivaj ŝanĝoj, implicita hashing de la tuta antaŭa historio en ĉiu kommit estas uzata, kaj ankaŭ eblas atesti individuajn etikedojn kaj kommitaĵojn per ciferecaj subskriboj de programistoj.

Kompare kun la antaŭa eldono, la nova versio inkludis 505 ŝanĝojn, preparitajn kun la partopreno de 77 programistoj, el kiuj 26 partoprenis en evoluo por la unua fojo. Baza novigoj:

  • Eksperimentaj "git switch" kaj "git restore" komandoj estas enkondukitaj por apartigi loze kunligitajn "git checkout" kapablojn, kiel branĉa manipulado (ŝanĝado kaj kreado) kaj restarigo de dosieroj en la labordosierujo ("git checkout $commit - $filename"). aŭ tuj en la ensceniga areo ("—scenigo", ne havas analogon en "git checkout"). Indas noti, ke, male al "git checkout", "git restore" forigas nespuritajn dosierojn el la restarigitaj dosierujoj ("--no-overlay" defaŭlte).
  • Aldonita la opcio "git merge –quit", kiu, simile al "-abort", ĉesigas la procezon de kunfandado de branĉoj, sed lasas la labordosierujon netuŝita. Ĉi tiu opcio povas esti utila se iuj el la ŝanĝoj faritaj dum mana kunfandado estus preferindaj esti eldonitaj kiel aparta kommit.
  • La komandoj "git clone", "git fetch" kaj "git push" nun konsideras la ĉeeston de kommits en ligitaj deponejoj (alternas);
  • Aldonita la opcioj “git blame —ignore-rev” kaj “—ignore-revs-file” permesas salti kommitaĵojn, kiuj faras malgrandajn ŝanĝojn (ekzemple, formatadajn korektojn);
  • Aldonita la opcio "git cherry-pick —skip" por preterlasi konfliktan transdonon (parkerigita analogo de la "git reset && git cherry-pick —continue" sekvenco);
  • Aldonita la agordo status.aheadBehind, kiu konstante riparas la opcion "git status -[no-]ahead-behind";
  • Ekde ĉi tiu eldono, "git log" defaŭlte enkalkulas ŝanĝojn faritajn de poŝtmapo, simile al kiel git shortlog jam faras;
  • La ĝisdatiga operacio de la eksperimenta kaŝmemoro de la kommit-grafo (core.commitGraph) enkondukita en 2.18 estis signife akcelita. Ankaŭ igis git for-each-ref pli rapida kiam vi uzas plurajn ŝablonojn kaj reduktis la nombron da vokoj al aŭto-gc en "git fetch —multiple";
  • "git branch --list" nun ĉiam montras dekroĉitan KAPITON ĉe la komenco mem de la listo, sendepende de loko.

fonto: opennet.ru

Aldoni komenton