19 Punkte von GN⁺ 2025-11-27 | 13 Kommentare | Auf WhatsApp teilen
  • Ab Git 3.0 wird beim Erstellen neuer Repositories der Standard-Branch automatisch auf main gesetzt
  • Diese Änderung ist in den Patch Notes zu Git 2.52 festgehalten: Ab Git 3.0 verwendet der Befehl git init statt „master“ den Branch-Namen „main“
  • Die Software Freedom Conservancy kündigte im Juni 2020 Pläne zur Änderung des Standard-Branch-Namens an, und GitHub setzte dies ab Oktober desselben Jahres um
  • Für Git 3.0 gibt es noch kein festgelegtes Veröffentlichungsdatum; vermutet wird eine Veröffentlichung gegen Ende 2026
  • Die neue Version enthält wichtige Änderungen wie den Wechsel auf SHA-256-Hashes, Verbesserungen am Speicherformat und einen in Rust integrierten Build-Prozess

Änderung des Standard-Branchs in Git 3.0

  • Ab Git 3.0 wird beim Erstellen neuer Repositories der Standard-Branch automatisch auf „main“ gesetzt
    • Nutzer müssen den Standard-Branch dann nicht mehr manuell festlegen
  • In den Patch Notes zu Git 2.52 steht: „Ab Git 3.0 verwendet der Befehl git init statt ‚master‘ den Anfangs-Branch ‚main‘.“
  • Diese Änderung markiert einen offiziellen Kurswechsel des Git-Projekts und ersetzt die bisherige Bezeichnung „master“

Hintergrund und verwandte Entwicklungen

Veröffentlichungszeitplan für Git 3.0

Wichtige technische Änderungen in Git 3.0

  • Die Standard-Hash-Funktion wird von SHA-1 auf SHA-256 umgestellt, was die Sicherheit erhöht
  • Das Speicherformat wird verbessert, wodurch Leistung und Kompatibilität unter macOS und Windows steigen
  • Die Programmiersprache Rust wird offiziell in den Build-Prozess von Git integriert, was Codequalität und Wartbarkeit verbessern soll

13 Kommentare

 
3ae3ae 2025-11-27

Unabhängig von der PC-Debatte ist es eine gute Sache, dass es jetzt mit GitHub vereinheitlicht wurde.
Da GitHub wohl kaum von main wieder zu master zurückkehren wird...

 
wedding 2025-11-27

Ich wollte gerade den Witz machen, dass man auch unpraktisch ist und wir es deshalb in doc umbenennen sollten, aber auf HN wurde das schon gepostet, haha.

 
GN⁺ 2025-11-27
Hacker-News-Kommentare
  • Ehrlich gesagt ist es mir persönlich egal, aber „master“ ist nun faktisch vorbei

    • Auch einige erfahrene Entwickler wollten die Umbenennung
    • Wie dem auch sei, „main“ hat sich als Standard etabliert, und jetzt ist es Zeit, einfach weiterzugehen
    • Manche hielten diese Änderung für eine Verschwendung von Engineering-Ressourcen
      • In der Filmbranche werde der Begriff „mastering“ weiterhin verwendet, und es gebe keinen Grund, das zu ändern
      • Solche Wortzensur verschärfe ihrer Ansicht nach die gesellschaftliche Spaltung
    • Andere sagten, es gehe schlicht nur um einen Standardwert
      • Man könne weiterhin init.defaultBranch = master setzen
      • Das Wort „master“ klinge gut, während „main“ inhaltlich schwach wirke
    • Wieder andere meinten, ihnen sei der Name selbst egal, solange es Konsistenz gebe
      • Nachdem GitHub den Standard-Branch geändert hatte, gingen Skripte kaputt und das war kurzzeitig unbequem, inzwischen ist das aber gelöst
    • Jemand riet schlicht dazu, diese Debatte mit dem Befehl git config --global init.defaultBranch master zu ignorieren
  • „master“ war der Standard-Branch; daher fragt man sich, warum das in 3.0 geändert wurde

    • Falls es wegen der Geschichte der Sklaverei in den USA sei, wirke es merkwürdig, dass der Rest der Welt dieses Problem mittragen solle
    • Es gebe die Sorge, wie weit eine solche überzogene sprachliche Bereinigung noch gehen werde
    • Als Antwort darauf wurde erklärt, dass Git den Namen aus der master/slave-Struktur von BitKeeper übernommen habe
      • Git habe das Konzept eines „slave branch“ zwar nicht direkt verwendet, aber der Ursprung des Begriffs sei geblieben
      • Außerdem wurde angemerkt, dass Sklaverei nicht nur ein US-Problem, sondern ein weltweites Phänomen gewesen sei
  • Ich bevorzuge es, den Standard-Branch auf develop zu setzen und später nach release zu verzweigen

    • Das Konzept eines „zentralen Branches“ passe strukturell nicht zu Git
    • Je größer die Debatte werde, desto mehr müsse man sich an die HN-Richtlinie erinnern, produktive Diskussionen zu führen
    • Jemand erinnerte daran, dass in SVN früher trunk der Standard-Branch gewesen sei
    • Eine andere Person stimmte zu, dass in aktiven Repositories explizite Namen besser seien als ein magisch wirkender Branch wie „master“
    • Ergänzt wurde, dass es in Git verschiedene Arten der Versionsverwaltung gebe und keine einzige davon die einzig richtige sei
  • Es wurde gescherzt, dass in manchen Firmen sogar der Befehl „man“ als nicht inklusiv beanstandet werde

    • Darauf folgte der Hinweis, dass „man“ ursprünglich eine geschlechtsneutrale Etymologie habe
    • Jemand anderes merkte an, dass solche Diskussionen aus mangelndem Kontextverständnis entstünden
    • Einer fragte satirisch, ob dann auch „hash“ wegen der Assoziation mit Drogen verboten werden müsse
    • Darauf kam die Reaktion: „Bring sie nicht noch auf Ideen“
    • Andererseits gab es auch die moderate Meinung: „Wenn es nichts kostet und Menschen ein besseres Gefühl gibt, warum sollte man dagegen sein?“
  • Es wurde gefragt, warum „Scrum Master“ nicht geändert worden sei

    • Jemand sagte scherzhaft, man werde es dann eben „Scrum Main“ nennen
    • Eine andere Person erklärte, Scrum Master stamme nicht aus dem master/slave-Konzept
    • Manche Firmen verwendeten stattdessen die Bezeichnung „Agile Champion
    • Wieder jemand anderes witzelte: „Muss man dann auch den Master-Abschluss (MSc) umbenennen?“
  • Manche kritisierten diese Änderung als Kapitulation vor einer politischen Ideologie

    • Darauf kam die Antwort: „Vielleicht ist es einfach nur ein Versuch, freundlich zu sein; nicht alles ist ein Krieg.“
  • Es wurde erwähnt, dass Mercurial von Anfang an „default“ als Namen für den Standard-Branch verwendet habe

  • Jemand argumentierte, „master“ sei ohnehin ein unpassender Begriff für die verteilte Struktur von Git, daher sei die Änderung auch technisch sinnvoll

  • Manche sagten, wieder habe „die intoleranteste Person“ gewonnen, und kündigten an, weiterhin „master“ zu verwenden

  • In den eigenen Projekten verwende man schon immer develop als Standard-Branch, und inzwischen wünsche man sich einfach, dass diese Debatte endlich vorbei sei

 
sudosudo 2025-11-28

Scheint eine gute Entscheidung zu sein.

 
dalinaum 2025-11-27

Eine richtige Entscheidung.

 
joyfui 2025-11-27

Ehrlich gesagt halte ich den Grund für ziemlich absurd, aber trotzdem begrüße ich die Änderung aus dem banalen Grund, dass es von sechs auf vier Buchstaben verkürzt wurde.

 
vndk2234 2025-11-27

Wenn das so läuft, was soll man dann mit orphan machen ...

 
t7vonn 2025-11-28

Git 4.0 veröffentlicht – statt orphan wird der Begriff parentally-independent verwendet.

 
dongho42 2025-11-28

🤣

 
hpark 2025-11-27

Das scheint eine zeitgemäße Veränderung zu sein.

 
aqqnucs 2025-11-27

Wirklich eine Energieverschwendung für so eine unnötige Sache.

 
skageektp 2025-11-27

Was hat die Tatsache, dass es Sklaverei gab, überhaupt mit master und slave zu tun?

 
lazyhack 2025-11-27

Dakbokkeumtang, IT-Version