Versionsverwaltungen

Posted in tech with tags Rant tech Vergleich Argumente Pseudoargumente Development Git SVN Subversion Versionsverwaltung Bazaar -

git hat gewonnen.

Also nicht gegen SVN, das war überhaupt kein Gegner. SVN war nur der Grund aus dem man was sinnvolles wollte. SVN war der Startschuss für das Rennen, Konkurrenz gab es andere.

Zentralisierte Versionsverwaltung (wie SVN) skaliert einfach nicht - und die von SVN ist nochmal richtig beschissen implementiert. Wann immer dir jemand sagt “jetzt nicht updaten/commiten, ich mache gerade was an Branch XYZ”, hat das System versagt.

Wenn nach dem 2. oder 3. kom0lizierten Merge nicht (oder nur mit drastischem Aufwand) festzustellen ist, wer eine Zeile ursprünglich mal geschrieben hat, dann hat die Versionierung ihre Hauptaufgabe verkackt.

Wenn ein Merge nur noch “Treeconflict” ruft und vollständig aufgibt, weil ein Verzeichnis umbenannt wurde, ist die Unterstützung zum Mergen nahezu nutzlos.

Nein, SVN war nie ein Gegner. Die Gegner waren eher Mercurial, Darcs und Bazaar. Dinge die heute so verbreitet sind dass ich Google bemühen musste, weil ich nicht auf Anhieb 3 Beispiele namentlich parat hatte.

Es gibt aber inzwischen kein anderes, relevantes Versionsverwaltungssystem mehr. Git hat alle verdrängt.

Normalerweise bin ich echt kein Fan der Denkweise “Das verwenden alle, das muss gut sein”, aber in dem Fall ist ziemlich der ganze Markt mit viel Aufwand bewusst von SVN zu Git gewechselt - und ich habe nie von irgendwem gehört der diesen Schritt wirklich bereut hätte. Es ist schwer das zu ignorieren.

Und doch gibt es noch Firmen die auf SVN hängen geblieben sind - Noch Heute! Ende 2018! - Damit meine ich nicht mal “Ja, unsere alten Projekte wollten wir nicht umstellen.” Dafür hätte ich durchaus Verständnis.

Nein, da kommen so Argumente wie:

  • “Wir haben beides ausführlich verglichen, git hatte keine Vorteile für uns” - (nein, habt ihr offensichtlich nicht getan)
  • “Unsere Enterprise-Echtzeitjava-Projekte auf Windows erzeugen extrem lange Pfade - wenn wir git verwenden gibt’s nochmal 8 Zeichen längere Dateinamen und alles explodiert” - (Und wenn ich Nägel mit dem Auge einschlagen will, kommen nur Wände aus Papier in Frage - verschraubtes Holz geht ja garnicht!)
  • “Wir bräuchten dann einen Linux-Server, aber wir haben keinen” - (einfach nur nein)

Wie ich darauf komme? Ich bin mal wieder über einen maueralten Eintrag im pyChao-IRC-Bot gestolpert:

[#5185] Subversion ist nach dieser Meldung getorben: Subversion wird Apache-Projekt

[Fact #5185] Verfasst von snookie, Datum: 2009-11-05 22:57:25 im Freenode-Channel #zanzibar

Mindestens ein Jahrzehnt tot - bitte begrabt es endlich! Es würde so unfassbar viel Kopfschmerzen und Arbeitszeit einsparen.

Geschrieben von DrAzraelTod
 
Older article
Wähler und Eier