Die Versionszicken

Der Frage nach der Versionierung - als ernsthafte Systematik, nicht im Sinne einer persönlichen Ordnung der Art “_v1″ oder _”220709″ - haftet ja durchaus etwas gretchenhaftes an. Jeder tut es, wenn er gefragt wird. Nur: wie sieht es denn nun tatsächlich aus?

Bei großen Softwareprojekten macht es ohne Frage Sinn, sich auf Subversion oder CVS zu verlassen, um den Überblick zu behalten. Wahrscheinlich geht es ohne kaum bis gar nicht. Aber spielt Versionierung auch im Webdesign eine Rolle? Ist es ein Thema?

Wie schön, dass es die Geschichte von der kleinen Versionsnummer gibt, die vielleicht Antwort auf alle Fragen gibt…

Version 1.0 oder die Vermeidung des Zickenalarms?

Es war einmal eine wunderschöne, kleine Versionsnummer in einem CMS Template. Die Webdesigner Hexe hatte sie 1.0 getauft und das gefiel der kleinen Versionsnummer außerordentlich gut. Auch die Webdesigner Hexe war äußerst glücklich mit ihrer Namenswahl. Eigentlich hatte die Webdesigner Hexe kaum etwas für Versionsnummern übrig, aber die 1.0 hatte es ihr angetan, weil sie da so klar und rund stand.

Irgendwann machte das Template eine Reise und mit ihr die Versionsnummer als treue Begleiterin. Natürlich hatte die Hexe beides vorher geklont, - sicherheitshalber falls auf dieser Reise etwas schief gehen würde.

Das Template und die Versionsnummer trafen unterdessen bei einem mächtigen Webzauberer an, der sein neues Geschenk sofort auf einen Testserver zauberte, um es im CMS live zu erleben. Nur der Webzauberer war anspruchsvoll und wünschte sich doch noch ein bisschen mehr von seinem neuen Template.

Die Webdesigner Hexe, grundsätzlich guter Laune und voller Ehrfurcht vor dem großen Webzauberer, zauberte ihrem geklonten Template wie gewünscht ein bisschen mehr Funktionalität hinzu, klonte es und schickte es mit ihrer geliebten kleinen Versionsnummer wieder auf die Reise. Das Spiel begann von Neuem. Nur diesmal zauberte der mächtige Webzauberer allerdings nicht nur das Template auf den Server - nein, er erwischte dabei auch die kleine Versionsnummer, die nun plötzlich 1.1 hieß und nicht so recht wusste wie ihr geschah. Und natürlich hatte der Zauberer sofort weitere Wünsche und ließ das die Hexe auch sofort wissen.

Die Webdesigner Hexe war erstaunt, als sie ihre kleine Versionsnummer plötzlich jeglicher Rundungen entledigt, mager wie zwei Striche in der Landschaft so auf dem Server rumzappeln sah. Sie machte sich daran, des Zauberers Wünsche umzusetzen und gab sich größte Mühe aus ihrer Versionsnummer nun wenigstens eine 1.2 zu zaubern und sie damit wieder etwas rundlicher aussehen zu lassen.  Wieder ging die Reise los. Und wieder war der Zauberer noch nicht so ganz zufrieden, denn inzwischen waren ihm eine Menge neuer Ideen eingefallen.

Eigentlich war die Webdesigner Hexe fast froh, denn nun konnte sie aus der immer noch recht jämmerlichen 1.2 eine 1.3 machen - das sah doch fast schon wieder aus wie vorher, auch wenn sie sich eigentlich ihre 1.0 wieder gewünscht hätte und Mühe hatte, die richtigen Hexensprüche zu finden, - inzwischen braute sich über dem Hexenkessel schon ein kleiner Streit der inzwischen vier Versionsnummern an und die Hexe hatte alle Hände voll zu tun, Ordnung im Hexenhaus zu halten. Aber die Hexe hatte bekanntlicherweise etwas Respekt vor dem mächtigen Zauberer und wollte keinen Fehler machen…

So ging es leider noch eine Weile weiter. Die 1.4 fiel der Hexe schwer - zudem der Versionierungs-Zickenalarm wieder Verstärkung bekommen hatte und die Hexe sich kaum mehr konzentrieren konnte. Die 1.5, eine sehr ruhige Ausgabe, gefiel der Hexe dann schon wieder besser. Nur merkte sie in ihrer Freude leider nicht, dass inzwischen trotzdem ein richtig großer Streit zwischen den Versionsnummern ausgebrochen war und man sich gegenseitig versuchte, einzelne Dateien aus den Templates zu stibizen, während der Zauberer viele Zaubersprüche geschickt hatte und parallel seinen Wunschpunsch mixte, was die Webdesigner Hexe nur noch mehr daran hinderte, konzentriert zu hexen und den Überblick zu behalten.

Und so war dann tatsächlich in Version 1.5 eine Datei, in die die Webdesigner Hexe die Hexensprüche zur Zähmung uralter, unter Webdesigner Hexen und Zauberern sehr gefürchteter Dämonen gepackt hatte, plötzlich vollkommen verschwunden. Sie hatte sich ins hinterste Eck verdrückt, nachdem 1.4 und 1.3 sich derartig beharkten, dass es ihr Angst und Bang wurde.

Natürlich war dies dem Zauberer sofort aufgefallen, und er wurde laut und etwas ungemütlich. Doch die Hexe hatte längst wieder Ordnung in ihren zickigen Versionshaufen gebracht, die abtrünnige Datei eingefangen und schickte die 1.5 einfach komplett noch mal los, die vom mächtigen Zauberer sofort ohne ihr Zutun auf dem Weg Richtung Server in eine 1.6 verzaubert wurde, - was die Hexe weniger glücklich machte: wieder ein Version-Klon mehr und das nur, weil die vorherigen Versionsnummern sich schon nicht grün waren… Im Hexenhaus herrschte Chaos, aber das Projekt schien beendet. Die Hexe war fix und fertig, zauberte die Versionsnummern in Reih und Glied in eine große Schublade und konnte sich gerade noch einen frischen Kaffee hexen.

Wäre da nicht der Zauberer gewesen, der- offenbar mit Faible für schlanke Versionen- schnell mal aus der 1.6 eine 1.7 gezaubert hatte und die Hexe per Eilpost kontaktierte mit einem allerletzten Wunsch. Die wusste inzwischen nicht mehr ein noch aus, denn die inzwischen acht Versionen passten nicht mehr in eine Schublade und schwirrten kreischend durchs Hexenhaus. Es war die Walpurgisnacht und alle anderen Webdesigner Hexen tanzten gut gelaunt ums Hexenfeuer, während die kleine Webdesigner Hexe nicht mehr wusste, wie sie ihrem Versionsdilemma Herr werden sollte.  In ihrer Verzeiflung und tiefen Depression kontaktierte die Hexe die Oberhexe, die natürlich alles andere als glücklich war, beim Feiern gestört zu werden, dann aber doch noch die richtige Antwort auf das Nummernchaos fand: “42″.

Schnell war die Version 42 fertig gehext und auf die Reise geschickt. Die Hexe aber packte ihre inzwischen acht Versionen, setzte sich auf ihren Hexenbesen und flog zu ihren Kolleginnen auf den Blocksberg. In hohem Bogen und rasendem Tempo flog sie über das Hexenfeuer und warf sie alle hinein, die 1.1, die 1.2 bis zur 1.7. Die 1.0 behielt sie und beide schauten lachend zu, wie die Flammen eine grünliche Färbung bekamen während die Versionsnummern unter großem Gekreische im Feuer verbrannten.

Am nächsten Tag machte sich die Hexe gleich daran, die überflüssige 42 gegen ihre geliebte 1.0 auszutauschen, um dann das CMS Template inklusiver der klaren und runden 1.0  in fertiger Version endgültig in eine Schublade zu hexen. Die Hexe zauberte außerdem ein opulentes Frühstück, lehnte sich gemütlich zurück und lächelte. Ob die 42 dem mächtigen Zauberer nun wirklich die Antwort auf seine letzten Fragen geben konnte, das interessierte sie schon fast nicht mehr…

Und?

Mal im Ernst und unter Freunden… natürlich hoffen wir, der mächtige Zauberer konnte herzlich lachen, aber wie haltet Ihr es mit der offiziellen Versionierung von Templates? Was ist für Euch eine Version? Was ist ein Minor und was ist ein Major Release? Oder verwendet ihr die Versionsinformationen, wie sie beispielsweise Joomla vorsieht überhaupt nicht? Und was macht Ihr, ohne Subversion und CVS, mit alten Versionen? Archivieren? Wegwerfen?

Ist professionelle Versionierung ein Thema für den Coder oder auch für den Designer interessant?

 

2 Antworten zum Beitrag “Die Versionszicken”

  1. am 22 Jul 09 um 23:48 meint

    Zunächst ein ganz großes Lob; dein Artikel ist ausgesprochen klasse geschrieben!

    Zu deiner letzten Frage: Ich persönlich mache nichts mehr ohne Versionsverwaltung im Hintergrund, auch wenn ich alleine an einer Sache arbeite. Früher hatte ich dafür noch einen eigenen CVS-Server auf meiner lokalen Maschine laufen, bis ich letztes Jahr zuerst mercurial[1] und später git[2] entdeckt habe. Der Vorteil bei den letztgenannten ist, dass man keinen schwer zu konfigurierenden Serverdienst benötigt - die Versionshistorie wird einfach in einerm versteckten Verzeichnis innerhalb des Projektes gespeichert.

    In meinen Augen ist ein VCS auf alle Fälle auch für Designer (und jeden anderen, der irgendeine Form von Test-Dateien bearbeitet) interessant, da die Bedienung eben kein Hexenwerk oder schwarze Magie ist, dafür aber jede Menge Zeit und Nerven sparen kann. Man kann (unter anderem) gefahrlos verschiedene Dinge ausprobieren, schnell zu einem früheren Entwurf zurückkehren, oder auch eine einzelne Änderung, die man in der Vergangenheit gemacht hat, wieder Rückgängig machen.

    Eine “Designer-taugliche” Einführung (no offence) in git gibt es z.B. unter [3] und [4].

    [1]

    [2]

    [3]

    [4]

  2. am 24 Jul 09 um 18:08 meint

    Anne-Kathrin

    Danke für die umfangreiche Info und die interessanten Links - insbesondere aber der Inspiration zu neuen Themen… ;-)

Auch was dazu sagen?