Quoi de neuf dans Git 2.38 ?
Par Maxime Bréhin • Publié le 31 oct. 2022

Mise à jour le 29 novembre 2022, 12:00

Ce lundi 3 octobre 2022 est sortie la version 2.38 de Git avec deux nouveautés notables, la première étant une nouvelle option de rebase, --update-refs, l'autre étant l'intégration d'un nouvel outil pour faciliter la gestion de dépôts massifs, j'ai nommé Scalar !

Je te fais un résumé !

L’option update-refs : une presque excellente nouvelle

Avec Christophe, on a cru un instant qu’on avait enfin notre deep rebase 😃. Fausse joie 😞, mais joie quand même car cette nouvelle option satisfera tout de même quelques cas d’usages.

Déjà, à quoi sert cette nouvelle option ? Elle nous permet de mettre à jour les références des branches qui sont dans l’historique direct de la branche qu’on rebase. Bon, dit comme ça, il y a peu de chance que tu aies compris. Voyons donc tout ça plutôt avec un schéma animé :

Schéma décrivant le déplacement des étiquettes de branches avec `update-refs`

On trouve quand même sympa le fait de pouvoir rebaser des branches par-dessus une autre, même si ça ne marche qu’avec des branches "en ligne droite". Ça signifie que pour une branche dev qui aurait une sous-branche feature, les 2 ayant divergé (évolué chacune de son côté), si on rebase dev, la branche feature restera à ses état et emplacement actuels.

Le rebase de `dev` ne déplace pas sa branche enfant `feature` en raison de leur divergence

Même chose si je rebase feature, la branche dev restera où elle est :

Le rebase de `feature` ne déplace pas sa branche parente `dev` en raison de leur divergence

On continue d’espérer le rebase des branches en profondeur un de ces jours.

Scalar : comme un aboutissement pour la performance

Microsoft fournit là une contribution très importante pour la gestion des dépôts massifs avec l'introduction dans la distribution de Git d'un utilitaire, surcouche à Git qui s'appuie sur les évolutions déjà intégrées comme l’amélioration de la maintenance, le sparse-checkout ou encore les commit graphs.

L'intention est donc d’améliorer la performance pour les contributeurs·rices mais aussi de faciliter la maintenance de ces dépôts.

Histoire de bien beta-tester le bousin, ils ont pris un projet à peine sensible : Office 365 !

Pour la petite histoire, ça fait un petit moment qu’il bossent sur le sujet de la perf pour répondre aux contraintes de leurs projets. Scalar était d'ailleurs initialement codé en .NET Core.

Je passe mon tour pour une démo ici, ça mérite un article qu’on produira peut-être plus tard.

Tout savoir sur Git 2.38

Il y a toujours plus à dire sur une nouvelle version. Aussi n'hésite pas à consulter directement l'article GitHub résumant tout ça, ou, si tu es courageux·se, va regarder les les notes de versions.

Ne manque pas les prochaines nouveautés !

On a tout plein d’articles et de vidéos existants et encore beaucoup à venir. Pour ne rien manquer, tu devrais penser à t’abonner à notre newsletter, à notre chaîne YouTube, nous suivre sur Twitter ou encore mieux, à suivre notre formation du feu de dieu 🔥 : Git Total !

Découvrez nos cours vidéo ! 🖥

Nos cours vidéo sont un complément idéal et bon marché à nos articles techniques et formations présentielles. Autour de Git, de JavaScript et d’autres sujets, retrouvez des contenus de très grande qualité à des prix abordables, spécialement conçus pour lever vos plus gros points de blocage.