Wenig Beachtung unter Webentwicklern sind die Backups der eigenen Dateien. Noch wichtiger aber als die bloße Kopie wichtiger Dateien ist eine Versionsverwaltung. Ralf Kühnbaum-Grashorn ist im Interview und erklärt im Gespräch mit David Maciejewski, warum auch normale Webentwickler Subversion und co einsetzen sollten.

Höre Technikwürze auf SoundCloud: Diese Folge | Alle Folgen

Ralf Kühnbaum-Grashorn ist Spezialist im Gebiet der Versionsverwaltung und steht im Interview Rede und Antwort. Für euch haben wir die Stichworte aus dem Gespräch hier zusammengefasst.

Warum eigentlich Versionsverwaltung?

  • Protokollierungen der Änderungen – Es kann jederzeit nachvollzogen werden, wer wann was geändert hat.
  • Wiederherstellung von alten Ständen einzelner Dateien – Somit können versehentliche Änderungen jederzeit wieder rückgängig gemacht werden.
  • Archivierung der einzelnen Release-Stände eines Projektes – Dadurch ist es jederzeit möglich auf alle ausgelieferten Versionen zuzugreifen.
  • Koordinierung des gemeinsamen Zugriffs von mehreren Entwicklern auf die Dateien
  • Gleichzeitige Entwicklung mehrerer Entwicklungszweige

Wie funktioniert das?

Stichworte: pessimistisches (read lock write) und optimistisches ( copy modify merge ) Versionieren

Warum eigentlich Versionsverwaltung im Design-Bereich?

  • Websites bestehen in der Regel aus mehreren Dateien, Verzeichnissen
  • nur die Kombination aus diesen Dateien ergibt ein Ergebnis
  • es lassen sich einfach Varianten oder z.B. kundenspezifische Versionen anlegen
  • häufig arbeiten mehrere Personen/Instanzen zusammen an einer Site
  • Schnelles Deployment auf Test- oder Produktiv-Systemen.

Versionsverwaltung auch für Einzelgänger

  • lohnt sich auch bei lokaler Entwicklung (siehe oben).
  • Backup und Historie
  • es muss nicht erst ein “Server” her.

Versionsverwaltung mit subversion

  • Kurze Historie
  • CVS als Vorgänger
  • wichtigste Unterschiede
  • Skalierbarkeit
  • Verlässlichkeit
  • Unterstützte Betriebssysteme (*nix, Linux, MacOSX, Windows)
  • Architektur (apache, DAV, ssh, etc.)
  • Standards (http(s), ssh
  • effiziente Versionierung von Binär-Dateien (Grafiken) und Verzeichnissen
  • Bedienbarkeit
  • Unterstützung in Applikationen (GUI, Desktop, IDEs etc.), Clients, IDEs, Frontends.
  • Zugriffsmöglichkeiten (http(s), svn+ssh etc.)
  • Automatisierung
  • Erweiterbarkeit

Links zur Versionsverwaltung

News

Lektüreempfehlungen

In dieser Woche könnt ihr viel über Design, Usability und Entscheidungen erfahren.

  • Seit einigen Tagen ist das neueste Betriebssystem aus dem Hause Microsoft erhältlich. Doch welche Neuerungen bringt Windows Vista mit sich? Und wie schnell sollte man jetzt umsteigen? Web Worker Daily nennt uns jeweils 10 gute Gründe, das System sofort zu aktualisieren bzw. damit noch zu warten: 10 Reasons for the Windows Web Worker to Upgrade to Vista
    Or Not
    .
  • Über Entscheidungen und die Arbeit mit Kunden berichtet Susan Mernit. Allen Unsicheren gibt sie den Tipp, auch mal Nein zu sagen: Adventures in product development: The No Patrol.
  • Nach einigen Beiträgen zu den kommenden Trends im Jahre 2007 schreibt auch D. Keith Robinson seine Gedanken nieder: In seinem Artikel The Words of Design: 2007 nennt er einige Dinge, die in diesem Jahr wohl einen großen Einfluss auf unsere Arbeit im Web haben werden. Auch das Logodesign wird in diesem Jahr gewissen Mustern folgen. Welche das sind hat Logo Orange aufgeschrieben: 11 trends that will define logo design in 2007.
  • Wer eine Website gestaltet, befasst sich nicht nur mit Designfragen, sondern auch mit dem Nutzer, der die Website besuchen soll. Welches Verhalten solch ein Nutzer haben kann, wissen wir von Jakob Nielsen. Eine neue Eye-Tracking-Studie, die sich mit dem Nutzerverhalten, den Unterschieden zwischen Browsen und Suchen auf einer Website und verschiedenen Websitearten beschäftigt, kommt von Sav Shrestha und Kelsi Lenz: Eye Gaze Patterns while Searching vs. Browsing a Website.
    Eine ganz andere Sicht auf den Nutzer bietet Hugh MacLeod mit dem End-User Manifesto seines Bloglesers Danny.
  • Und damit ihr bei der nächsten Website nicht ratlos vorm Bildschirm sitzt, haben Mark Boulton, Patrick Hunlock und Bharath Kumar einige Tipps auf Lager:
  • Five Simple Steps to designing with colour part 3: Colour combinations
    1. “If Only Id Known! (Tips for a new website)If Only Id Known! (Tips for a new website)”:http://www.hunlock.com/blogs/If_Only_Id_Known!_(Tips_for_a_new_website)
    2. Design a Web 2.0 tab with Photoshop

    Dieser Beitrag wurde am Dienstag, 6. Februar 2007 um 19:10 Uhr in der Kategorie Podcast veröffentlicht.
    Kommentare sind im Moment nicht erlaubt, du kannst aber einen Trackback von deiner Seite aus senden.

    Kommentare

    • macx
      am 6. Februar 2007, 19:37 Uhr

      Aufgrund eines Fehlers im Schnitt konnte diese neue Folge erst am Dienstag, 06.02. um 19:00 Uhr online gehen. Wer die alte Folge erwischt hat, kann hier die neue runterladen.

    • Daniel Jagszent
      am 7. Februar 2007, 02:02 Uhr

      Ja! SVN ist wirklich klasse!

      Was ich auch sehr nützlich finde, sind die hooks Damit kann man das Repository direkt wieder auf einen Test/Staging-Server auschecken. So könnte ein solcher Hook z.B. aussehen:
      #!/bin/sh
      # POST-COMMIT HOOK
      REPOS="$1"
      svn export --force $REPOS /home/testingsite/htdocs/

      Eclipse SVN-Integration finde ich unschlagbar. Ich benutze da Subversive in meinem Lieblings-Editor, aber das war ja eine andere Folge ;)

    • Ralf Kühnbaum-Grashorn
      am 7. Februar 2007, 08:49 Uhr

      @Daniel:

      Macht es denn wirklich Sinn, per post-comitt hook direkt wieder auszuchecken. Denn per hook würde ja bedeuten, es JEDES mal und automatisch zu machen. Ich comitte häufiger und ich/Team sind auf dem Staging-Server nicht unbedingt jedes mal schon durch.

      Aber man kann mit den hooks auch tolle Sachen machen, wie etwa Mails oder Jabber-Notifications an das Team herumschicken, wenn sich etwas getan hat. Oder man läßt z.B. Unit-Tests oder andere Routinen laufen.

      mfg Ralf

    • Daniel Jagszent
      am 7. Februar 2007, 14:00 Uhr

      Hi Ralf,

      mit einer Kombination aus pre- und post-commit-hook könnte man das ganze natürlich auch abhängig von einem frei gewählten check-in Kommentar machen. Ich checke aber nicht so häufig ins SVN ein – habe in Eclipse ja schon eine eingebaute History – und komme mit dem einem Skript wunderbar aus.

    • Cornelius
      am 13. Februar 2007, 06:18 Uhr

      Klasse Folge, hab schon haeufig Subversion / CVS fuer Programmierprojekte eingesetzt und kann jedem der im Team arbeitet nur dazu raten es einzusetzen. Man sollte sich aber schon ein wenig ins Thema Versionsverwaltung einlesen, um nicht ploetzlich mit einem korrupten Repository und einer zerstoerten Verzeichnisstruktur zu enden. Also erst klein anfangen und probieren.
      Gruss, Cornelius.

    • Shakka
      am 21. Februar 2007, 15:26 Uhr

      Hallo,
      durch diverse Opensource-Projekte kannte ich CVS/SVN schon. Meist aber nur als Quelle für die neueste Programmversion mit den aktuellsten Features… Danke für die Motivation, es auch für eigenes Schaffen, egal bei welchem Thema, zu nutzen.

      Mich würde freuen, wenn im Podcast und den Notizen mehr Wert auf Interoperabilität gelegt werden würde. Ganz im Sinne der offenen Standards:
      Wenn schon Hinweis auf bestimmte Programm, dann bitte auch mal abseits der Marktführer/Monopole.
      Es gibt (immer mehr) Leute, die z.B. auch unter Linux oder mit GIMP/Inkscape arbeiten. Daher wäre eine platformübergreifende Bereichterstattung toll.

      Dank & Grüße!

    • Jan
      am 18. März 2007, 11:25 Uhr

      Wollte mal fragen,ob es auch eine gute GUI für die Administration des SVN gibt?

      Gruß
      Jan

    • macx
      am 18. März 2007, 12:42 Uhr

      Auf dieser Seite haben wir bereits viele Links gesetzt, auch zu GUIs.

    Dein eigener Kommentar

    Die Kommentarfunktion für diesen Beitrag wurde deaktiviert.