Jauna Git 2.28 versija, kas ļauj neizmantot nosaukumu "master" galvenajām zarām

Pieejams izplatīta avota kontroles sistēmas izlaišana Git 2.28.0. Git ir viena no populārākajām, uzticamākajām un augstas veiktspējas versiju kontroles sistēmām, kas nodrošina elastīgus nelineārus izstrādes rīkus, kuru pamatā ir sazarošana un apvienošana. Lai nodrošinātu vēstures integritāti un noturību pret retroaktīvām izmaiņām, katrā saistībā tiek izmantota visas iepriekšējās vēstures netieša jaukšana, kā arī ir iespējams sertificēt atsevišķus tagus un saistības ar izstrādātāju digitālajiem parakstiem.

Salīdzinot ar iepriekšējo versiju, jaunajā versijā tika iekļautas 317 izmaiņas, kas sagatavotas, piedaloties 58 izstrādātājiem, no kurām 13 izstrādē piedalījās pirmo reizi. Pamata jauninājumiem:

  • Pievienots init.defaultBranch iestatījums, kas ļauj izvēlēties patvaļīgu galvenās filiāles nosaukumu, kas tiks izmantots pēc noklusējuma. Šis iestatījums ir pievienots projektiem, kuru izstrādātājus vajā atmiņas par verdzību, un vārds “saimnieks” tiek uztverts kā aizvainojošs mājiens vai raisa garīgas ciešanas un neizpirktas vainas sajūtu. GitHub, GitLab и Bitbucket nolēma galvenajām nozarēm vārda “master” vietā lietot vārdu “galvenais”. Programmā Git, tāpat kā iepriekš, palaižot komandu "git init", pēc noklusējuma turpina izveidot "master" zaru, taču tagad šo nosaukumu var mainīt. Piemēram, lai mainītu sākotnējās filiāles nosaukumu uz "galvenais", varat izmantot komandu:

    git config --global init.defaultBranch main

  • Pievienota veiktspējas optimizācija, pamatojoties uz izskatu commit-graph faila formātā, ko izmanto, lai optimizētu piekļuvi izpildes informācijai, atbalsts Bloom filtri, varbūtības struktūra, kas ļauj viltus identificēt trūkstošo elementu, bet izslēdz esošā elementa izlaišanu. Norādītā struktūra ļauj ievērojami paātrināt meklēšanu izmaiņu vēsturē, izmantojot komandas “git log - " vai "git blame".
  • Komanda “git status” sniedz informāciju par daļējas klonēšanas darbības gaitu (sparse-checkout).
  • Komandu saimei "diff" ir ierosināts jauns iestatījums "diff.relative".
  • Pārbaudot, izmantojot "git fsck", tagad tiek novērtēta objekta koka šķirošana un tiek identificēti nešķirotie elementi.
  • Sensitīvas informācijas rediģēšanas saskarne trasēšanas izvadē ir vienkāršota.
  • Ievades pabeigšanas skriptam ir pievienots komandas "git switch" opciju aizpildīšanas atbalsts.
  • “git diff” tagad atbalsta argumentu nodošanu dažādos apzīmējumos (“git diff A..BC”, “git diff A..BC…D” utt.).
  • Pievienota iespēja norādīt pielāgotu elementu kartēšanu komandai "git fast-export --anonymize", lai precīzi noregulētu izvadi, lai padarītu to labāk atkļūdojamu.
  • "git gui" ļauj atvērt darba kokus no sākotnējā dialoga.
  • Protokols “ienes/klonēšana” nodrošina servera iespēju informēt klientu par nepieciešamību papildus pārsūtītajiem iepakotajiem objekta datiem ielādēt iepriekš sagatavotus pakotnes failus.
  • Turpinājās darbs pie pārejas uz SHA-256 jaukšanas algoritmu SHA-1 vietā.

Avots: opennet.ru

Pievieno komentāru