Nehmen wir ein einfaches Beispiel: Ihr arbeitet in einer Projektgruppe an einer empirischen Hausarbeit und schreibt auch Code. Ihr habt es bis zu einer finalen Version des Skripts geschafft und macht nun eine finale Kontrolle.
Dazu teilt A die eigentliche finale Version mit B, C, D. C ist übereifrig und korrigiert noch an einer Stelle und schickt eine weitere finale Version zurück an A, B und D. D findet wiederum einen weiteren Fehler und überarbeitet die finale Version von Person C und schickt sie wieder an A, B und C. B dagegen ist etwas durcheinander und bearbeitet die erste finale Version von A und schickt diese rum an A, C und D.
Allein vom Text her müsste es jetzt ein Chaos in deinem Kopf geben und du kennst das sicher aus Gruppenarbeiten. In dem Bild unten ist das ganze auch nochmal grafisch dargestellt.
Was hierbei klar wird ist, dass (insbesondere, aber nicht nur) am Ende eines Projekts es elegantere Wege gibt als Dateien per E-Mail oder per Cloud-Server (wie Hessenbox) zu teilen. Auch mit Cloud-Servern wie Hessenbox oder Dropbox ist das Chaos nicht in Gänze zu vermeiden, da hier die synchrone Bearbeitung oftmals zu Problemen führt. Und genau da setzt gitlab für uns an.
Gitlab ist eine Distribution von git (neben z.B. github), die sowohl in der Wirtschaft als auch in der Wissenschaft genutzt wird. Gitlab bietet einen umfangreichen Workflow an, wir beschränken uns auf das wesentliche (Teilen und Bearbeiten von Textdateien). Dennoch ist es hilfreich, hier nun einen Einstieg in Gitlab zu haben, da es insbesondere in der (IT-)Projektarbeit von vielen Unternehmen genutzt wird.
In unserer Konfiguration ist es das Ziel mit gitlab Änderungen in textbasierten Dateien nachverfolgen zu können, also im konkreten Fall in den R-Skripten (.R
). Personen können gleichzeitig an Dateien arbeiten und es gibt keinen großen Clash wie i.d.R. in der Hessenbox und alle Änderungen werden global gespeichert, sind nachvollziehbar und können allen zur Verfügung gestellt werden. Es ist also das perfekte Tool, um gemeinsam und kollaborativ an einem Projekt (wie der Gruppenabgabe in der Übung) zu arbeiten! Zum Verständnis hier: Du bearbeitest die Dateien nur lokal an deinem Rechner bzw. in RStudio und nachdem du fertig bist, gibst du deine Änderungen frei, so dass auch die anderen deine Änderungen sehen. Wie der Prozess genau abläuft, erfährst du am Ende dieses Kapitels.
Auf geht’s zur JLU-Distribution von gitlab!