Git 2.38 inclut scalar, le nouvel utilitaire développé par Microsoft, des améliorations et bien plus

Git 2.38 inclut scalar, le nouvel utilitaire développé par Microsoft, des améliorations et bien plus

Git est un logiciel de contrôle de version conçu par Linus Torvalds dans un souci d'efficacité, de fiabilité et de compatibilité.

Récemment la sortie de la nouvelle version a été annoncée système de contrôle de code source distribué Git 2.38, qui par rapport à la version précédente, 699 modifications ont été acceptées dans la nouvelle version, préparée avec la participation de 92 développeurs, dont 24 ont participé au développement pour la première fois.

Pour ceux qui ne connaissent pas Git, sachez que ceci est l'un des systèmes de contrôle de version les plus populaires, logiciel fiable et performant qui fournit des outils de développement non linéaires flexibles basés sur des forks et des fusions de forks.

Pour garantir l'intégrité de l'historique et la résistance aux modifications antidatées, un hachage implicite de tout l'historique précédent est utilisé dans chaque commit, il est également possible de vérifier les signatures numériques des développeurs de balises et de commits individuels.

Points forts de Git 2.38

Dans cette nouvelle version de Git 2.38 qui est présentée, il est mis en évidence que utilitaire scalaire inclus développé par Microsoft pour gérer de grands référentiels. L'utilitaire a été écrit à l'origine en C#, mais une version C modifiée est incluse dans git. Le nouvel utilitaire diffère de la commande git en incluant des fonctionnalités et des paramètres supplémentaires valeurs par défaut qui affectent les performances lorsque vous travaillez avec de très grands référentiels.

Par exemple, lors de l'utilisation de scalaire, ce qui suit s'applique :

  • Clone partiel pour travailler avec une copie incomplète du référentiel.
  • Mécanisme intégré de suivi des modifications du système de fichiers (FSMonitor), qui élimine le besoin de répertorier l'intégralité du répertoire de travail.
  • Index qui couvrent des objets dans différents packages de fichiers (multi-package).
  • Fichiers de graphique de validation avec un index de graphique de validation utilisé pour optimiser l'accès aux informations de validation.
  • Travail de fond périodique pour maintenir la structure optimale du référentiel en arrière-plan sans bloquer la session interactive (une fois par heure, un travail est effectué pour obtenir de nouveaux objets du référentiel distant et mettre à jour le fichier avec le graphe de validation, et le processus d'empaquetage de le référentiel est démarré chaque nuit).
  • Un mode "sparseCheckoutCone" qui restreint les modèles valides dans le clonage partiel.

Un autre changement qui est présenté dans cette nouvelle version de Git 2.38 est le Option "–update-refs" de la commande "git rebase" pour mettre à jour les branches dépendantes qui se croisent avec les branches déplacées, vous n'avez donc pas à extraire manuellement chaque branche dépendante pour passer au commit souhaité.

Il est également souligné que le format de fichier bitmap a été optimisé pour fonctionner avec de grands référentiels- Ajout d'une table d'index facultative avec une liste des commits sélectionnés et leurs décalages.

En plus de cela, nous pouvons trouver que dans la commande "git merge-tree" implémente un nouveau mode dans lequel, sur la base de deux commits spécifiques, un arbre est calculé avec le résultat de la fusion, comme si les historiques de ces commits étaient fusionnés.

Configuration ajoutée "safe.barerepository" pour contrôler si les référentiels qui ne contiennent pas d'arborescence de travail, ils peuvent être placés dans d'autres dépôts git. Lorsqu'ils sont définis sur "explicit", les référentiels nus situés dans le répertoire supérieur ne pourront fonctionner que. Pour pouvoir mettre des dépôts nus dans des sous-répertoires, la valeur "all" doit être utilisée.

Des autres changements qui se démarquent de cette nouvelle version:

  • Ajout de l'option "-m" ("-max-count") à la commande "git grep", qui est similaire à l'option GNU grep du même nom et vous permet de limiter le nombre de résultats de correspondance.
  • La commande "ls-files" implémente l'option "--format" pour personnaliser les champs de sortie (par exemple, vous pouvez activer la sortie du nom de l'objet, des modes, etc.).
  • Dans "git cat-file", lors de l'affichage du contenu des objets, la possibilité de prendre en compte les liens des auteurs vers les emails, spécifiés dans le fichier mail map, est implémentée.
  • Commande "git rm" rendue compatible avec les index partiels.
  • Amélioration du comportement de la commande "git mv AB" lors du déplacement d'un fichier d'un espace de travail avec des index partiels en mode "cône" vers une zone extérieure où ce mode n'est pas appliqué.

Enfin si vous souhaitez en savoir plus, vous pouvez vérifier les détails dans le lien suivant.


Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont marqués avec *

*

*

  1. Responsable des données: Miguel Ángel Gatón
  2. Finalité des données: Contrôle du SPAM, gestion des commentaires.
  3. Légitimation: votre consentement
  4. Communication des données: Les données ne seront pas communiquées à des tiers sauf obligation légale.
  5. Stockage des données: base de données hébergée par Occentus Networks (EU)
  6. Droits: à tout moment, vous pouvez limiter, récupérer et supprimer vos informations.