Programmieren > Werkzeuge > Versionskontrolle > Git

Git - Testumgebung

Es hilft wenig, eine Internet-Seite zu lesen, wenn man das Wissen danach nicht anwenden kann. Deshalb sollte man eine Test-Umgebung zur Verfügung haben, in der man gefahrlos einmal alles ausprobieren kann. Nur wenn man sein Wissen anwenden kann, nützt es was.

Gott sei Dank ist auch die Erstellung einer erweiterten Test-Umgebung für git, in der man auch komplexere Dinge testen kann, recht einfach. Hier die paar Schritte, die dazu nötig sind.

Warum Kommandozeilen-Befehle

Jede Entwicklungsumgebung und auch viele spezielle Git-Tools haben grafische Benutzeroberflächen, mit denen git verwendet werden kann. Und jeder Entwikler sollte seine bevorzugte Entwicklungsumgebung so gut beherrschen, dass er von dort git bedienen kann, damit er sich die tägliche Arbeit erleichtert.

Aber jedes grafische Tool hat seine Grenzen und das was die Git-Entwickler entwickeln, sind die Kommandozeilen-Befehle. Diese sind also immer die, die am sichersten funktionieren. Noch dazu befindet man sich recht schnell per SSH auf einem Server und hat nichts anderes, als die Kommandozeile zur Verfügung.

Somit sollte jeder Entwickler auch und vor allem git auf der Kommandozeile beherrschen. Nur dann beherrscht man git wirklich. Ein Tool mit einer grafischen Oberfläche zu beherrschen ist immer nur ein Zusatz, der einem das Leben hoffentlich zusätzlich erleichtert.

Einfache Test-Umgebung

Bauen wir uns also zunächst eine einfache Test-Umgebung, mit der man bereits grundlegende Dinge mit git als lokales Repository testen kann. Bauen wir sie gleich so, dass sie im zweiten Schritt einfah zu einer komplexeren Umgebung erweitert werden kann.

Erstellen wir zuerst ein neues Verzeichnis, in dem unsere Test-Umgebung entsteht. In diesem Verzeichnis erstellen wir ein neues Verzeichnis eines Benutzers nutzer1, dessen Inhalt in Zukunft von git verwaltet werden soll.

    mkdir git_test
    cd git_test
    mkdir nutzer1

Will man aus dem Verzeichnis nutzer1 nun ein Verzeichnis machen, das von git verwaltet wird, geht man in das Verzeichnis und führt dort git init aus. Dies erzeugt ein git-Repository mit denen man schon viele der Beispiele auf den Seiten Grundlagen und Branching ausprobieren kann.

    cd nutzer1
    git init

Erweiterte Test-Umgebung

In der erweiterten Test-Umgebung kann man bereits die Arbeit mit entfernten Repositories testen. Dieses entfernte Repository ist bei der Test-Umgebung zwar nur ein Verzeichnis entfernt. Für git macht das allerdings wenig Unterschied, ob das Repository ein Verzeichnis entfernt ist, oder auf einem Server auf einem anderen Kontinent ist.

Benutzen wir die Test-Umgebung oben und erweitern sie. Verlassen wir dazu das Verzeichnis nutzer1 und erstellen aus dem lokalen Repository dort ein entferntes Repository. Aus diesem entfernten Repository erstellen wir die Arbeitsumgebung eines zweiten Nutzers dieses Repositories.

    cd ..
    git clone --bare nutzer1/.git/ repository.git
    git clone repository.git/ nutzer2

Dadurch, dass das Verzeichnis nutzer2 direkt aus dem entfernten Repository heraus geklont wurde, ist es automatisch mit diesem Repository verbunden. Diese Verbindung muss für das Repository in nutzer1 noch von Hand hergestellt werden.

    cd nutzer1
    git remote add origin ../repository.git/

Fazit

Mehr als diese paar Befehle ist tatsächlich nicht nötig, um eine Test-Umgebung zu bauen, mit der bereits sehr komplexe Szenarien ausgetestet werden können. Noch dazu ist diese Umgebung einfach für noch komplexere Tests erweiterbar, indem man beliebig viele Nutzer oder auch beliebig viele Repositories hinzufügt.

Die Erklärungen der git-Befehle ist hier absichtlich sehr kurz gehalten, damit die Test-Umgebung schnell entsteht. Wenn hier etwas unklar ist, sollte die Erklärung auf den anderen Git-Seiten gefunden werden. Um diese Erklärungen dort zu verstehen existiert ja dann die Test-Umgebung, um diese Befehle auszuprobieren.