Recherche sur le site Web

Git 2.53 publié avec de nouvelles vérifications de maintenance et des chemins de diff plus rapides


Git 2.53 introduit la maintenance « is-needed », étend les outils de dépôt et livre des améliorations de performance dans les diff, les packs et les structures internes de la base d’objets.

Plus de deux mois après la précédente version 2.52, Git, un système de contrôle de version distribué et une pierre angulaire du développement logiciel, aidant les développeurs à gérer efficacement les modifications de leur code à travers les projets, vient juste de publier la version 2.53.

L'une des additions les plus visibles est un nouveau sous-commande git maintenance is-needed. Elle permet aux utilisateurs et aux outils de déterminer si des tâches de maintenance, comme le reconditionnement ou l'optimisation des références, sont réellement nécessaires, ce qui aide à éviter un travail en arrière-plan inutile sur des dépôts qui sont déjà sains.

De plus, la commande expérimentale git replay met désormais à jour les références elle-même en utilisant une seule transaction par défaut, au lieu de générer des mises à jour de référence pour qu'une autre commande les applique. La version 2.53 améliore également les messages d'erreur, la documentation et la couverture des tests, notamment en ce qui concerne la gestion des révisions et les arguments invalides.

Plusieurs commandes courantes bénéficient également d'améliorations progressives. git blame prend maintenant en charge la sélection d'un algorithme de diff, offrant aux utilisateurs plus de contrôle sur la manière dont les modifications sont attribuées à travers les révisions.

À la fois git apply et git diff introduisent une nouvelle classe d'erreurs d'espacement pour les lignes incomplètes, rendant ces problèmes plus visibles et gérés de manière cohérente dans l'ensemble des outils. Les commandes d'inspection du dépôt sont également enrichies, avec de nouvelles options pour git repo info et une sortie plus détaillée de git repo structure, incluant des informations supplémentaires sur la base de données des objets.

Sous le capot, une quantité importante de travail est consacrée à la performance et à la structure interne. Les opérations de diff bénéficient d'optimisations telles que la désactivation de la détection de renommage et de copie lors de l'exécution de git diff --quiet, où seule la présence de modifications compte.

De plus, l'utilisation de la mémoire a été réduite dans les chemins coûteux de détection des copies, et les efforts de refactorisation se poursuivent autour de la base de données d'objets, de la gestion des fichiers pack et des API de streaming.

Enfin, Git 2.53 fait progresser le support des liens symboliques en amont sur Windows, accompagné de la préparation de la suite de tests et de nombreuses corrections dans la couche de compatibilité MinGW. Sur macOS, Git contourne désormais des problèmes longtemps rencontrés dans l’implémentation d’iconv fournie par le système plutôt que de la remplacer complètement.

Comme d'habitude, la version se conclut par une longue liste de corrections traitant des plantages, des sorties mal alignées impliquant des chemins non ASCII, des cas particuliers de fusion, des erreurs de configuration et des erreurs de documentation. Pour plus de détails sur tous les changements dans Git 2.53, consultez l'annonce de la sortie.