Git 2.44 arriveert met geweldige verbeteringen en nieuwe functies

git 2.44

git 2.44-banner

De nieuwe versie van Git, 2.44, is na drie maanden ontwikkeling uitgebracht en bevat 503 wijzigingen ten opzichte van de vorige versie. Deze wijzigingen zijn tot stand gekomen in samenwerking met 85 ontwikkelaars, waarvan 34 voor het eerst aan de ontwikkeling hebben meegewerkt.

Voor degenen die niet bekend zijn met Git: het staat bekend als een van de populairste, meest betrouwbare en krachtige versiebeheersystemen , dat flexibele, niet-lineaire ontwikkeltools biedt op basis van vertakkingen en samenvoegingen. Om de integriteit van de geschiedenis te waarborgen en terugwerkende wijzigingen te voorkomen, gebruikt Git een impliciete hash van de volledige voorgaande geschiedenis in elke commit.

Git 2.44 hoogtepunten

In deze nieuwe versie van Git 2.44 is een van de belangrijkste nieuwe functies de ondersteuning voor het hergebruiken van objecten in meerdere pakketten . Deze optimalisatie stelt Git in staat om objecten in meerdere pakketten te hergebruiken, waardoor het niet langer nodig is om een ​​volledige repository in één enkel pakket te verpakken. Dankzij deze verbetering kan Git pakketten efficiënter genereren, wat resulteert in een hogere snelheid en betere prestaties tijdens push- en pull-bewerkingen van en naar externe repositories. Vanaf versie 2.44 kan Git objecten hergebruiken in meerdere pakketbestanden zonder dat de repository in één enkel pakketbestand hoeft te worden verpakt.

Daarnaast biedt de introductie van `git replay` een effectief alternatief voor `git rebase` en kan het worden gebruikt om de geschiedenis te herstellen op een server zonder werkmap (een eenvoudige repository zonder werkmap), meerdere branches tegelijk te verwerken, een rebase-bewerking uit te voeren op branches die verschillen van de branches die momenteel worden opgehaald, of simpelweg om merge-bewerkingen te versnellen. `git replay` biedt aanzienlijke prestatieverbeteringen, met name bij merge- en rebase-bewerkingen op grote repositories.

Met Git 2.44 kan de optie `--autosquash` nu worden gebruikt voor niet-interactieve basiswijzigingsbewerkingen . Deze functionaliteit stelt je in staat om automatisch fixup! of squash! commits toe te passen op de bijbehorende locaties, zonder dat je de takenlijst handmatig hoeft te controleren.

Een ander hoogtepunt is de aanzienlijke nieuwe functionaliteit en de verbeteringen . De commando's `git add` en `git stash` ondersteunen nu de padkenmerken `:(attr:…)`, die op dezelfde manier geconfigureerd kunnen worden als bij het `git show` commando. Zo kan bijvoorbeeld `git add ':(attr:~binary)'` gebruikt worden om alle tekstbestanden (niet-binaire bestanden) aan de index toe te voegen. Daarnaast is het kenmerk `builtin_objectmode` geïntroduceerd om bestandspaden te filteren op basis van toegangsrechten. Zo kan bijvoorbeeld `git add ':(attr:builtin_objectmode=100755)'` gebruikt worden om alle uitvoerbare bestanden aan de index toe te voegen.

Andere opvallende wijzigingen zijn onder meer:

  • Ondersteuning toegevoegd voor het GitLab CI continue integratiesysteem.
  • Optie toegevoegd «–diff-algoritme»Naar het« commandogit merge-bestand» om een ​​alternatief algoritme te selecteren om de verschillen tussen bestanden te evalueren.
  • Ondersteuning toegevoegd voor het updaten van OAuth-tokens naar de backend van wincred credential management, vergelijkbaar met hoe dit is geïmplementeerd in de bbevestigt credential-cache en credential-libsecret.
  • «git ophalen» ondersteuning toegevoegd voor de « configuratieoptiehaal.alles op«, wat op dezelfde manier zal worden afgehandeld als het toevoegen van de « optie-allemaal» op de opdrachtregel.
  • Optie toegevoegd «–negeer-andere-werkbomen» om het bijwerken en uitchecken van takken die een andere werkboom gebruiken mogelijk te maken. Dit herstelt het eerdere gedrag van het “git checkout -B” commando.
  • Het is nu mogelijk om deze instelling op «waar» om de instructie te verwijderen «Schakel dit bericht uit met…» die ruimte in beslag namen op het scherm bij het weergeven van suggesties. Dit verbetert de gebruikerservaring door onnodige elementen uit de opdrachtuitvoer te verwijderen.
  • De uitvoering van dit commando is geoptimaliseerd met de optie «–geen sortering». Voorheen, zelfs bij het opgeven van «–geen sortering«, de regeling werd nog steeds in alfabetische volgorde toegepast. Nu, na optimalisaties, is het gebruik van «–geen sortering" versnellen "git voor-elke-ref» met ongeveer 20% in repositories met een groot aantal referenties.

Als u tot slot meer wilt weten, kunt u de details vinden via de volgende link.


Voeg dit toe als voorkeursbron in Google.