Liberazione di cuntrollu di fonte Git 2.35

Dopu dui mesi di sviluppu, u sistema di cuntrollu di fonte distribuitu Git 2.35 hè statu liberatu. Git hè unu di i sistemi di cuntrollu di versione più populari, affidabili è d'altu rendiment, chì furnisce strumenti di sviluppu flexible non lineari basati in ramificazione è fusione. Per assicurà l'integrità di a storia è a resistenza à i cambiamenti retroattivi, l'hashing implicitu di tutta a storia precedente hè aduprata in ogni impegnu; hè ancu pussibule di certificà e tag individuali è impegni cù signature digitale di i sviluppatori.

Comparatu à a versione precedente, a nova versione include 494 cambiamenti, preparati cù a participazione di sviluppatori 93, di quale 35 hà participatu à u sviluppu per a prima volta. Innuvazioni principali:

  • E pussibulità di utilizà chjavi SSH per firmà digitalmente l'oggetti Git sò stati allargati. Per limità u periodu di validità di parechje chjave, u supportu per e direttive OpenSSH "valid-before" è "valid-after" hè statu aghjuntu, cù quale pudete assicurà u travagliu currettu cù signature dopu chì a chjave hè stata rotata da unu di i sviluppatori. Prima di questu, ci era un prublema cù a siparazione di e signature da a chjave antica è nova - se sguassate a chjave antica, serà impussibile di verificà e signature fatte cun ella, è se l'abbandunate, allora resterà pussibule. creanu novi signatures cù a chjave antica, chì hè digià stata rimpiazzata da una altra chjave. Utilizendu validu-prima è validu-dopu pudete separà u scopu di e chjave basatu annantu à u tempu chì a firma hè stata creata.
  • In u paràmetru merge.conflictStyle, chì permette di selezziunà u modu per a visualizazione di l'infurmazioni nantu à i cunflitti durante una fusione, hè apparsu supportu per u modu "zdiff3", chì move tutte e linee standard specificate à l'iniziu o à a fine di u cunflittu fora di u cunflittu. zona, chì permette una presentazione più compacta di l'infurmazioni.
  • U modu "--staged" hè statu aghjuntu à u cumandamentu "git stash", chì vi permette di ammuccià solu i cambiamenti aghjuntu à l'indici, per esempiu in una situazione quandu avete bisognu di posponà temporaneamente alcuni di i cambiamenti cumplessi per prima. aghjunghje ciò chì hè digià prontu è trattà cù u restu dopu un pocu tempu. U modu hè simile à u cumandimu "git commit", scrivite solu i cambiamenti posti in l'indici, ma invece di creà un novu impegnu in "git stash -staged", u risultatu hè guardatu in l'area temporale di stash. Una volta chì i cambiamenti sò necessarii, ponu esse rimbursati cù u cumandimu "git stash pop".
  • Un novu specificatore di formatu hè statu aghjuntu à u cumandimu "git log", "--format=%(describe)", chì vi permette di cumminà l'output di "git log" cù l'output di u cumandamentu "git describe". I paràmetri per "git describe" sò specificati direttamente in u specificatore ("-format=%(describe:match= , esclude = )"), in quale pudete ancu include tag accurtati ("—format=%(describe:tags= )") è cunfigurà u numeru di caratteri esadecimali per identificà l'uggetti ("—format=%(describe:abbrev= )"). Per esempiu, per elencu l'ultimi 8 commits chì i tags ùn anu micca un tag candidatu di liberazione, è specificendu identificatori di 8 caratteri, pudete aduprà u cumandimu: $ git log -8 —format='%(describe:exclude=*-rc *,abbrev=13 )' v2.34.1-646-gaf4e5f569bc89 v2.34.1-644-g0330edb239c24 v2.33.1-641-g15f002812f858 v2.34.1-643-g2edb95c94 v056-2.34.1-g642f56f95 v8-7-2.34.1edb203c9 gb2980902bd2.34.1 bbc640f3 v41-212-gffb2.34.1f639d v36-65715-gdf4132cXNUMXadebXNUMX vXNUMX-XNUMX-gXNUMXbXNUMXaXNUMX
  • U paràmetru user.signingKey supporta avà novi tipi di chjave chì ùn sò micca limitati à u tippu "ssh-" è specificendu a strada di u schedariu sanu à a chjave. Tipi alternattivi sò specificati cù u prefissu "key::", per esempiu "key::ecdsa-sha2-nistp256" per e chjave ECDSA.
  • A rapidità di generà una lista di cambiamenti in u modu "-histogram", è ancu quandu si usa l'opzione "-color-moved-ws", chì cuntrola l'evidenziazione di spazii in un diffarenzu di culore, hè stata notevolmente aumentata.
  • U cumandamentu "git jump", utilizatu per furnisce à Vim l'infurmazioni nantu à u saltu esatta à a pusizione desiderata in un schedariu quandu analizzanu i cunflitti di fusione, vedendu diffs, o eseguendu una operazione di ricerca, furnisce l'abilità di riduce i cunflitti di fusione cuparti. Per esempiu, per limità l'operazioni à u cartulare "foo" solu, pudete specificà "git jump merge - foo", è per escludiri u repertoriu "Documentazione" da u processu - "git jump merge - ':^Documentation'"
  • U travagliu hè statu fattu per standardizà l'usu di u tipu "size_t" invece di "unsigned long" per i valori chì rapprisentanu a dimensione di l'uggetti, chì hà permessu di utilizà filtri "puliti" è "smudge" cù schedarii più grande di 4 GB. nant'à tutte e plataforme, cumpresi piattaforme cù u mudellu di dati LLP64 , u tipu "unsigned long" in u quali hè limitata à 4 bytes.
  • L'opzione "-empty=(stop|drop|keep)" hè stata aghjunta à u cumandamentu "git am", chì vi permette di selezziunà u cumpurtamentu per i missaghji vacanti chì ùn cuntenenu patch quandu analizzanu patches da a mailbox. U valore "stop" finisce tutta l'operazione di patching, "drop" salta un patch vacu, è "keep" crea un cummit vacanti.
  • Aggiuntu supportu per indici parziali (indici sparse) à i cumandamenti "git reset", "git diff", "git blame", "git fetch", "git pull" è "git ls-files" per migliurà u rendiment è risparmià spaziu in repository , in quale operazioni di clonazione parziale (sparse-checkout) sò realizati.
  • U cumandimu "git sparse-checkout init" hè statu obsoletu è deve esse rimpiazzatu da "git sparse-checkout set".
  • Aghjunghje l'implementazione iniziale di un novu backend "reftable" per almacenà riferimenti cum'è rami è tag in u repository. U novu backend usa l'almacenamiento di bloccu utilizatu da u prughjettu JGit è hè ottimizatu per almacenà un gran numaru di referenze. U backend ùn hè ancu integratu cù u sistema di refs è ùn hè micca prontu per l'usu praticu.
  • A paleta di culori di u cumandimu "git grep" hè stata aghjustata per currisponde à l'utilità GNU grep.

Source: opennet.ru

Add a comment