Versioni i ri i Git 2.28, duke lejuar që të mos përdoret emri "master" për degët kryesore

Në dispozicion lëshimi i sistemit të kontrollit të burimit të shpërndarë git 2.28.0. Git është një nga sistemet më të njohura, më të besueshme dhe me performancë të lartë të kontrollit të versioneve, duke ofruar mjete zhvillimi fleksibël jo-lineare të bazuara në degëzimin dhe bashkimin. Për të siguruar integritetin e historisë dhe rezistencën ndaj ndryshimeve retroaktive, hashimi i nënkuptuar i të gjithë historisë së mëparshme përdoret në çdo kryerje; është gjithashtu e mundur të certifikohen etiketat dhe detyrimet individuale me nënshkrime dixhitale të zhvilluesve.

Krahasuar me versionin e mëparshëm, versioni i ri përfshinte 317 ndryshime, të përgatitura me pjesëmarrjen e 58 zhvilluesve, nga të cilët 13 morën pjesë në zhvillim për herë të parë. bazë risitë:

  • U shtua cilësimi init.defaultBranch, i cili ju lejon të zgjidhni një emër arbitrar për degën kryesore, i cili do të përdoret si parazgjedhje. Ky cilësim është shtuar për projektet, zhvilluesit e të cilëve janë të përhumbur nga kujtimet e skllavërisë dhe fjala "mjeshtër" perceptohet si një aluzion fyes ose ngjall ankth mendor dhe një ndjenjë faji të pashlyer. GitHub, GitLab и Bitbucket vendosi të përdorte fjalën “kryesore” në vend të fjalës “mjeshtër” për degët kryesore. Në Git, si më parë, ekzekutimi i komandës "git init" vazhdon të krijojë degën "master" si parazgjedhje, por ky emër tani mund të ndryshohet. Për shembull, për të ndryshuar emrin e degës fillestare në "main", mund të përdorni komandën:

    git config --global init.defaultBranch main

  • Shtuar optimizime të performancës bazuar në paraqitjen në formatin e skedarit commit-graph, të përdorura për të optimizuar aksesin për të kryer informacionin, mbështetje Filtrat e lulëzimit, një strukturë probabiliste që lejon identifikimin e rremë të një elementi që mungon, por përjashton lëshimin e një elementi ekzistues. Struktura e specifikuar ju lejon të shpejtoni ndjeshëm kërkimin në historinë e ndryshimeve kur përdorni komandat "git log - "ose "merr fajin".
  • Komanda "git status" jep informacion në lidhje me ecurinë e operacionit të pjesshëm të klonimit (sparse-checkout).
  • Një cilësim i ri "diff.relative" është propozuar për familjen "diff" të komandave.
  • Kur kontrolloni përmes "git fsck", klasifikimi i pemës së objektit tani vlerësohet dhe identifikohen elementë të pa sortuar.
  • Ndërfaqja për redaktimin e informacionit të ndjeshëm në daljen e gjurmës është thjeshtuar.
  • Mbështetja për plotësimin e opsioneve për komandën "git switch" është shtuar në skriptin e përfundimit të hyrjes.
  • "git diff" tani mbështet kalimin e argumenteve në shënime të ndryshme ("git diff A..BC", "git diff A..BC...D", etj.).
  • U shtua aftësia për të specifikuar një hartë të personalizuar të elementit në komandën "git fast-export --anonymize" për të rregulluar mirë daljen për ta bërë atë më të korrigjueshme.
  • "Git gui" ju lejon të hapni pemët e punës nga dialogu fillestar.
  • Protokolli "fetch/klon" zbaton aftësinë që serveri të informojë klientin për nevojën për të ngarkuar skedarët e paketës së përgatitur paraprakisht, përveç të dhënave të objektit të paketuar të transmetuar.
  • Puna vazhdoi për kalimin në algoritmin hash SHA-256 në vend të SHA-1.

Burimi: opennet.ru

Shto një koment