Git und Github: »master« wird »main«

Github nennt den Hauptzweig in neuen Repositories nicht mehr master sondern main, bestehende Repos muss man aber selber umdöngeln. Nach dem Motto »Selbst ist der Repo-Man« zeigt dieser Beitrag, dass das einfacher geht als befürchtet.

Auf Github selbst gibt es eine hilfreiche Hilfeseite zur Umbennung der Branches:

Dort wird der aktuelle Stand der Dinge geschildert.

Schritt 1: Branch auf Github umbenennen

Solange es keine Pull Reqests etc. gibt, ist die Umbenennung wirklich einfach:

  1. Gewünschtes Repository auf Github im Browser öffnen.
  2. Auf dem Tab Code auf den Branch master klicken.
  3. Mit dem Link View all branches die Branch-Übersicht aufrufen (auch wenn es nur einen gibt).
  4. In der Branch-Übersicht kann man den Branch ganz einfach umbenennen: einfach auf den Bleistift klicken.
  5. Lesen.
  6. Verstehen.
  7. Rename Branch anklicken.
  8. Fertig.

Schritt 2: Branch lokal umbenennen

Falls es auf Ihrem lokalen Rechner eine Kopie des Repos gibt, muss man die Branches dort manuell umbenennen:

  1. Im gewünschten Ordner ein Terminal öffnen.
  2. Mit git status kurz den Stand der Dinge checken.
  3. Zur Umbenennung von master in main einfach die folgenden drei Befehle eingeben:
git branch -m master main  
git fetch origin
git branch -u origin/main main

Diese Befehle benennen den Branch um und stellen anschließend die Verknüpfung zwischen remote und lokal her.

Man kann sie selbst eintippen oder von Github kopieren. Beim ersten Aufrufen des Repos nach der Umbenennung werden sie im Browser angezeigt (siehe Beitragsbild).

Diesen Beitrag weiterempfehlen:

2 Gedanken zu „Git und Github: »master« wird »main«“

  1. Grundsätzlich passt „main“ ja besser als „master“. Nur die Begründung für die Änderung tut wieder geradezu weh, denn angeblich sei der alte Name „rassistisch“ gewesen. 🙄 Eine Deutung, die wirklich an den Haaren herbeigezogen ist, gibt es doch auch „Meisterschaft“ und den „Meisterbrief“, sowie viele andere Bedeutungen des Wortes, die sich nicht auf die Sklaverei beziehen.

    Antworten
    • Zur Begründung für die Änderung gibt es diverse Quellen, und so an den Haaren herbei gezogen scheint es nicht zu sein. Hier eine kleine Auswahl.


      Bastien Nocera beschreibt auf mail.gnome.org einige Nachforschungen und kommt zu dem Schluss, dass es durchaus eine direkte Verbindung zu »Master« und »Slave« gibt:

      So, yes, the „git master“ branch probably isn’t even a „master copy“ reference, but a straight up master/slave reference.


      Auf Github wird die Frage Why did you rename master to main? von einem Entwickler beantwortet:

      I completely understand that master have two meanings:

      1. A man who has people working for him, especially servants or slaves; and
      2. An original recording, film, or document from which copies can be made.

      As aforementioned, the usage of master as a branch most likely originated from the first meaning, so I’m not sure who is taking master out of context here. Words should not only be interpreted by how you think is sensible, but also by how it would be perceived by others.


      Auf Twitter gibt es einen recht ausführlichen Thread von Mismal Marohníc dazu:

      So is some code with a “master” branch inherently racist? Is a project with “cop” in its name inherently violent?

      In most cases, no. It’s just that these words can be a signal to others that you were not willing to put in the work of examining how your choices might hurt others.

      Antworten

Schreibe einen Kommentar

sechs + 10 =