Llançament del sistema de control de font distribuït Git 2.23

Presentat llançament d'un sistema de control de font distribuït Git 2.23.0. Git és un dels sistemes de control de versions més populars, fiables i d'alt rendiment, que ofereix eines de desenvolupament flexibles no lineals basades en ramificacions i fusions. Per garantir la integritat de l'historial i la resistència als canvis retroactius, s'utilitza hashing implícit de tot l'historial anterior a cada commit, i també és possible certificar etiquetes i commits individuals amb signatures digitals dels desenvolupadors.

En comparació amb la versió anterior, la nova versió va incloure 505 canvis, preparats amb la participació de 77 desenvolupadors, dels quals 26 van participar en el desenvolupament per primera vegada. Bàsic innovacions:

  • Les ordres experimentals "git switch" i "git restore" s'introdueixen per separar les capacitats de "git checkout" poc acoblades, com ara la manipulació de branques (canviar i crear) i restaurar fitxers al directori de treball ("git checkout $commit - $filename") o immediatament a l'àrea de posada en escena ("—staging", no té cap anàleg a "git checkout"). Val la pena assenyalar que, a diferència de "git checkout", "git restore" elimina els fitxers sense seguiment dels directoris que s'estan restaurant ("--no-overlay" per defecte).
  • S'ha afegit l'opció "git merge –quit", que, de manera similar a "-abort", atura el procés de fusió de branques, però deixa el directori de treball sense tocar. Aquesta opció pot ser útil si alguns dels canvis realitzats durant una combinació manual són preferibles que es publiquen com una confirmació independent.
  • Les ordres "git clone", "git fetch" i "git push" ara tenen en compte la presència de commits als dipòsits enllaçats (alterna);
  • Afegit les opcions “git blame —ignore-rev” i “—ignore-revs-file” us permeten ometre les confirmacions que fan canvis menors (per exemple, correccions de format);
  • S'ha afegit l'opció “git cherry-pick —skip” per saltar una confirmació conflictiva (un anàleg memoritzat de la seqüència “git reset && git cherry-pick —continue”);
  • S'ha afegit la configuració status.aheadBehind, que corregeix permanentment l'opció "git status -[no-]ahead-behind";
  • A partir d'aquesta versió, "git log" per defecte té en compte els canvis fets per mailmap, de manera similar a com ja ho fa git shortlog;
  • L'operació d'actualització de la memòria cau experimental del gràfic de commit (core.commitGraph) introduïda a la 2.18 s'ha accelerat significativament. També va fer que git for-each-ref fos més ràpid quan s'utilitzaven diverses plantilles i es va reduir el nombre de trucades a auto-gc a "git fetch —multiple";
  • "git branch --list" ara sempre mostra un HEAD separat al principi de la llista, independentment de la configuració regional.

Font: opennet.ru

Afegeix comentari