DVCS fürs Studium?

Anwendungsfall

Im Moment benutzen ich und meine Übungsgruppenpartner ein auf meinem Home-Server laufendes SVN zum Erstellen unserer Hausaufgaben und als Datei-Grab für Vorlesungen und Skripte.

Ich denke, dieses Problem lässt sich mit dem Umstieg auf ein Verteiltes Versionskontrollsystem (DVCS) umgehen oder teilweise lösen.

Problem: VDSL is still NA

Die beschränkte Bandbreite meiner Internetverbindung verhindert im Moment einige Nutzungsweisen. So lassen wir Video-Vorlesungen per Konvention aus der Versionsverwaltung heraus, weil Check-Outs sonst 1 Stunde * Video-Anzahl dauern würden.

Schlauere Implementation

Wenn Ich richtig verstehe, würde git selber hinzugefügte Dateien anhand ihrer SHA1-Quersumme als gleich der auf dem „zentralen“ Repository erkennen und nicht erneut herunterladen, obwohl die Commits und Check-Outs kanonisch sind. Außerdem könnte man auch voneinander pullen.

Problem: Kein Backup

Im Moment gibt es kein Backup unserer Sachen. Das sollte nicht weiter tragisch sein, weil jeder Teilhaber ja das für ihn relevante Zeugs bei sich hat, aber die Versionshistorie liegt nur auf dem Server und aus historischen Gründen, würde ich die gern lange behalten.

Lösung: Verteiltheit des Repositorys (Linus‘ Lösung für echte Männer)

Die Daten die im SVN liegen, sind gewissermaßen wertvoll und „soziale“ Backups auf allen Benutzer-Maschinen zu haben. Allein für mich bedeutet das Server + Desktop + Laptop = 3 Backups. Das ist schon fast Overkill. Speicherplatz ist äußerst günstig und von daher denke ich, dass es sich lohnt, die anfallenden 500 MB / Semester auf mehreren Maschinen vorzuhalten.

Problem: Unzuverlässige Internetverbindung

Internetverbindung ist nicht unbedingt überall gegeben, wo gearbeitet werden soll. Auch wenn der Campus mit Uni-WLAN versorgt ist, gibt es Räume wie z.B. das 10Vorne, in denen WLAN nur unzuverlässig nutzbar ist. Außerdem kommen einige Kommilitonen nicht aus Oldenburg und arbeiten unterwegs im Zug.

Lösung: Unabhängigkeit der Arbeitsmaschinen vom Server

Auch an solchen Orten könnte man mit einem DVCS Versionshistorien lesen, ältere Versionen auschecken und Branches erstellen. Mergen soll auch besser gehen, was auch immer das heißen mag.

Problem: Ein Webinterface ist nice-to-have, aber ein ziemliches High-Level-Feature

Um mal schnell ne Datei auf einen PC mit Drucker herunterladen oder „projektfernen“ Leuten Dinge zuzeigen, hat sich Trac bewährt.

Lösung: eingebaute Webinterfaces

Webinterfaces sind bei DVCS scheinbar verbreitetere Features: Bazaar kann sogar wieder Trac und selbst das eingebaute gitweb bietet schon Feeds an.

Problem: Informatiker sind auch nur Lefthänders

Der typische Informatiker scheint ausgestorben, oder die Kunst so sehr differenziert zu haben, dass sich viele als typisch erachten, aber kein Außenstehender sie noch als solche erkennen kann. („Ich kann nicht programmieren und will das auch nicht lernen, ich bin ja Wirtschaftsinformatiker.“ oder „SVN benutz ich nur, weil ihr das macht und sehe auch keinen Sinn darin.“)

Lösung: Einsteigerfreundlichkeit

Es gibt massig GUIs und alle DVCS laufen auf allen wichtigen Systemen. Das Konzept nur noch Clients zu haben und keinen übergeordneten Server ist der einfachere Ansatz, finde ich.

Problem: Nicht alle interessiert alles

Da sich die Übungsgruppen nicht immer aus den selben Leuten rekrutieren, müssen nicht alle den gesamten Fortschritt verfolgen.

Lösung: NA

Keines der drei nicht-kommerziellen DVCS unterstützt das Auschecken von Teilbäumen.

Advertisements

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s


%d Bloggern gefällt das: