Ny version af Git 2.28, der tillader ikke at bruge navnet "master" til mastergrene

Ledig frigivelse af et distribueret kildekontrolsystem Git 2.28.0. Git er et af de mest populære, pålidelige og højtydende versionskontrolsystemer, der giver fleksible ikke-lineære udviklingsværktøjer baseret på forgrening og sammensmeltning. For at sikre historiens integritet og modstand mod tilbagevirkende ændringer, anvendes implicit hashing af hele den tidligere historie i hver commit; det er også muligt at certificere individuelle tags og commits med digitale signaturer fra udviklerne.

Sammenlignet med den tidligere udgivelse indeholdt den nye version 317 ændringer, udarbejdet med deltagelse af 58 udviklere, hvoraf 13 deltog i udviklingen for første gang. Grundlæggende innovationer:

  • Tilføjet init.defaultBranch-indstillingen, som giver dig mulighed for at vælge et vilkårligt navn til hovedgrenen, som vil blive brugt som standard. Denne indstilling er blevet tilføjet for projekter, hvis udviklere er hjemsøgt af minder om slaveri, og ordet "mester" opfattes som en stødende antydning eller fremkalder mentale kvaler og en følelse af uforløst skyld. GitHub, GitLab и Bitbucket besluttede at bruge ordet "hoved" i stedet for ordet "mester" for hovedgrenene. I Git, som før, fortsætter kørsel af kommandoen "git init" med at oprette "master"-grenen som standard, men dette navn kan nu ændres. For eksempel, for at ændre navnet på den indledende gren til "main", kan du bruge kommandoen:

    git config --global init.defaultBranch main

  • Tilføjede ydeevneoptimeringer baseret på udseendet i commit-graf filformatet, brugt til at optimere adgangen til commit information, support Bloom filtre, en probabilistisk struktur, der tillader falsk identifikation af et manglende element, men udelukker udeladelse af et eksisterende element. Den angivne struktur giver dig mulighed for betydeligt at fremskynde søgningen i ændringshistorikken, når du bruger kommandoerne "git log - " eller "git blame".
  • Kommandoen "git status" giver information om forløbet af den delvise kloningsoperation (sparse-checkout).
  • En ny indstilling "diff.relative" er blevet foreslået for "diff"-familien af ​​kommandoer.
  • Når du tjekker gennem "git fsck", bliver sorteringen af ​​objekttræet nu evalueret, og usorterede elementer identificeres.
  • Grænsefladen til redigering af følsomme oplysninger i sporingsoutput er blevet forenklet.
  • Understøttelse af færdiggørelse af muligheder for kommandoen "git switch" er blevet tilføjet til scriptet til færdiggørelse af input.
  • "git diff" understøtter nu videregivelse af argumenter i forskellige notationer ("git diff A..BC", "git diff A..BC...D", osv.).
  • Tilføjet muligheden for at specificere en brugerdefineret elementmapping til kommandoen "git fast-export --anonymize" for at finjustere outputtet for at gøre det mere fejlfindbart.
  • "git gui" giver dig mulighed for at åbne arbejdstræer fra den indledende dialog.
  • "Fetch/clone"-protokollen implementerer serverens evne til at informere klienten om behovet for at indlæse forudforberedte pakkefiler ud over de transmitterede pakkede objektdata.
  • Arbejdet fortsatte med overgangen til SHA-256 hashing-algoritmen i stedet for SHA-1.

Kilde: opennet.ru

Tilføj en kommentar