19 points par GN⁺ 2025-11-27 | 13 commentaires | Partager sur WhatsApp
  • À partir de Git 3.0, lors de la création d’un nouveau dépôt, la branche par défaut sera automatiquement définie sur main
  • Ce changement est mentionné dans les notes de version de Git 2.52 : à partir de Git 3.0, la commande git init utilisera main au lieu de master
  • La Software Freedom Conservancy a annoncé en juin 2020 son projet de changer le nom de la branche par défaut, et GitHub l’a appliqué à partir d’octobre de la même année
  • Git 3.0 n’a pas encore de date de sortie fixée, mais sa publication est estimée vers fin 2026
  • La nouvelle version inclura des changements majeurs comme la transition vers le hachage SHA-256, des améliorations du format de stockage et l’intégration de Rust dans le processus de build

Changement de la branche par défaut dans Git 3.0

  • À partir de Git 3.0, lors de la création d’un nouveau dépôt, la branche par défaut sera automatiquement définie sur main
    • Les utilisateurs n’auront plus besoin de spécifier manuellement la branche par défaut
  • Les notes de version de Git 2.52 incluent la formulation suivante : « À partir de Git 3.0, la commande git init utilisera main comme branche initiale au lieu de master »
  • Ce changement marque une réorientation officielle du projet Git, remplaçant l’ancienne appellation master

Contexte et évolutions associées

Calendrier de sortie de Git 3.0

Principaux changements techniques de Git 3.0

  • La fonction de hachage par défaut passera de SHA-1 à SHA-256, renforçant la sécurité
  • Le format de stockage sera amélioré, avec de meilleures performances et une meilleure compatibilité sur macOS et Windows
  • Le langage Rust sera officiellement intégré au processus de build de Git, afin d’améliorer la qualité du code et sa maintenabilité

13 commentaires

 
3ae3ae 2025-11-27

Indépendamment de la polémique autour du politiquement correct, c’est une bonne chose que ce soit désormais aligné avec GitHub.
Comme GitHub ne reviendra sans doute jamais de main à master...

 
wedding 2025-11-27

J’allais faire la blague du « man, c’est pas pratique non plus, alors passons à doc », mais quelqu’un l’a déjà postée sur HN lol

 
GN⁺ 2025-11-27
Avis Hacker News
  • Honnêtement, personnellement, je m’en fiche, mais désormais « master » est en pratique terminé

    • Même certains développeurs seniors voulaient ce changement de nom
    • Quoi qu’il en soit, « main » s’est imposé comme valeur par défaut, et il est temps de passer à autre chose
    • Certaines personnes estimaient que ce changement était un gaspillage de ressources d’ingénierie
      • Dans l’industrie du cinéma, on utilise toujours le terme « mastering », et selon eux il n’y a aucune raison de le changer
      • Elles considèrent que ce type de censure des mots alimente les divisions sociales
    • D’autres disaient qu’il ne s’agissait que d’une question de valeur par défaut
      • Il reste possible de définir init.defaultBranch = master
      • Elles trouvent que le mot « master » a de l’allure, alors que « main » leur paraît faible en signification
    • D’autres encore disaient ne pas se soucier du nom lui-même, du moment qu’il y a de la cohérence
      • Après que GitHub a changé la branche par défaut, certains scripts ont cassé, ce qui a été gênant pendant un temps, mais c’est désormais résolu
    • Une personne conseillait simplement d’ignorer toute cette polémique avec la commande git config --global init.defaultBranch master
  • Certains se demandaient pourquoi « master », qui était la branche par défaut, changeait en 3.0

    • Si c’est à cause de l’histoire de l’esclavage aux États-Unis, ils trouvent étrange que le monde entier doive porter ce sujet
    • Ils s’inquiètent de savoir jusqu’où pourrait aller ce type de purification excessive du langage
    • En réponse, d’autres expliquaient que Git avait repris ce nom de la structure master/slave de BitKeeper
      • Git n’a pas repris tel quel le concept de « slave branch », mais l’origine du terme, elle, est restée
      • Il a aussi été avancé que l’esclavage n’était pas un problème propre aux États-Unis, mais un phénomène mondial
  • Je préfère pour ma part utiliser develop comme branche par défaut, puis créer ensuite une branche release

    • Le concept de « branche centrale » ne leur semble pas adapté à la structure de Git
    • À mesure que le débat enfle, cela rappelle les règles de HN sur la nécessité de discussions constructives
    • Quelqu’un se souvenait qu’à l’époque de SVN, la branche par défaut s’appelait trunk
    • Une autre personne approuvait l’idée que, dans un dépôt actif, des noms explicites valent mieux qu’une branche magique comme « master »
    • Il était aussi ajouté qu’il existe plusieurs façons de gérer les versions avec Git, et qu’aucune n’est l’unique bonne réponse
  • Une blague est sortie sur le fait que la commande man serait elle aussi jugée non inclusive et poserait problème en entreprise

    • En réponse, d’autres expliquaient que « man » a à l’origine une étymologie neutre du point de vue du genre
    • Une autre personne soulignait que ce type de discussion venait d’un manque de prise en compte du contexte
    • Quelqu’un ironisait en disant qu’il faudrait alors aussi interdire « hash » à cause de son association avec la drogue
    • Une autre réponse disait : « Ne leur donnez pas ce genre d’idées »
    • À l’inverse, certains adoptaient une position plus modérée : « Si ça ne coûte rien et que ça peut faire se sentir mieux certaines personnes, pourquoi s’y opposer ? »
  • Quelqu’un demandait pourquoi « Scrum Master » n’avait pas été renommé

    • Une personne plaisantait en disant qu’elle l’appellerait « Scrum Main »
    • Une autre expliquait que Scrum Master ne vient pas du concept master/slave
    • Certaines entreprises utilisent à la place l’intitulé « Agile Champion »
    • Une autre personne plaisantait encore : « Dans ce cas, il faut aussi renommer le diplôme de master (MSc) ? »
  • Certaines personnes critiquaient ce changement comme une capitulation face à une idéologie politique

    • D’autres répondaient : « C’est peut-être simplement une tentative d’être bienveillant, tout n’est pas une guerre. »
  • Il était mentionné que Mercurial avait dès le départ choisi « default » comme nom de branche par défaut

  • D’autres soutenaient que « master » était un terme inadapté à la structure distribuée de Git, et qu’il était donc techniquement juste de le changer

  • Certaines personnes disaient que « la personne la plus intolérante a encore gagné » et annonçaient qu’elles continueraient à utiliser « master »

  • Sur les projets qu’ils créent eux-mêmes, certains utilisent toujours « develop » comme branche par défaut et disent espérer que ce débat soit enfin clos

 
sudosudo 2025-11-28

Cela semble être une bonne décision.

 
dalinaum 2025-11-27

C’est la bonne décision.

 
joyfui 2025-11-27

Honnêtement, je trouve la raison assez absurde, mais bon, je salue quand même ce passage de 6 à 4 lettres pour ce détail somme toute mineur.

 
vndk2234 2025-11-27

Dans ce cas, qu’est-ce qu’on est censés faire de orphan...

 
t7vonn 2025-11-28

Sortie de git 4.0 - utilise le terme parentally-independent au lieu de orphan

 
dongho42 2025-11-28

🤣

 
hpark 2025-11-27

Cela semble être un changement en phase avec son époque.

 
aqqnucs 2025-11-27

Quel gaspillage d’énergie pour une chose aussi inutile.

 
skageektp 2025-11-27

Quel rapport entre l’existence passée de l’esclavage et les termes master/slave ?

 
lazyhack 2025-11-27

Version IT du dakbokkeumtang