Programmieren wollen allein reicht nicht, es gibt auch das ein oder andere Tool, mit dem man sich auseinandersetzen sollte. Eine Versionierungssoftware gehört eindeutig zu diesen Tools.
Bevor ich auf den Schnick Schnack in meiner Überschrift eingehe – ich habe mir die Phrase in dem Zusammenhang mal frecher Weise ausgeliehen – möchte ich möglichst kurz erklären, was git – und im Speziellen eine Versionsverwaltung – ist und macht.
Wie ich schon sagte, sollte man beim Programmieren nicht einfach drauf los tippen. Für ein halbwegs ernsthaftes Projekt, egal wie umfangreich, sollte man auf eine Versionsverwaltung setzen. Wie das Wort schon sagt, verwaltet man Versionen. Und zwar die seines Schaffens. Das ermöglicht einfach ausgedrückt, verschiedene Versionen seiner Arbeit zu jedem beliebigen Zeitpunkt wieder herstellen zu können und an diesen Stellen weiter zu arbeiten. Selbst wenn man also sein komplettes Projekt zerschossen hat, kann man, je nachdem, wie häufig man eine neue Version angelegt hat, zu dieser zurück und muss nicht in mühevoller Kleinstarbeit jeden Fehler im Code rückgängig machen. Dazu ist es natürlich wichtig, auch regelmäßige Versionsstände zu erstellen. Vergleichbar mit regelmäßigen Speicherständen in einem Textverarbeitungsprogramm. Mit dem Bonus, dass man eben zu dem Stand eines jeden Speicherpunktes zurückspringen kann. Nutzt man also schon bei kleinsten Projekten eine Versionsverwaltung, lernt man selbstverständlich auch den Umgang damit kennen und sichert sich dagegen ab, eventuell stundenlange Arbeit zunichte gemacht zu haben. Und für eine berufliche Karriere ist es sicher ebenfalls nicht verkehrt, sich mit den Grundzügen der Versionsverwaltung auszukennen.
Große Erklärungen dazu erspare ich euch. Da ich definitiv nicht zu den Profis auf dem Gebiet gehöre, möchte ich einerseits nichts falsches erzählen. Und andererseits haben schon so viele vor mir zusammengefasst, was git kann und nicht kann. Außerdem gibt es eine hervorragende Dokumentation; sogar in Deutsch. Und eine nicht ganz aktuelle Version der englischsprachigen Doku als kostenloses PDF auf der git Seite. Schaut euch da mal um.
Meine Wenigkeit kam im Praktikum für die Umschulung mit git in Kontakt. Für die Webentwicklung wird dort mit Visual Studio Code gearbeitet. Vorteil: Beides kostenlos. Da git selbst auch eine Software ist, muss diese natürlich neben dem Editor – ich würde nicht so weit gehen, VSC als IDE zu bezeichnen – ebenfalls installiert werden. Da VSC die Möglichkeit bietet, direkt in der Oberfläche über eine Tastenkombi die Konsole einzublenden und git die Steuerung zusätzlich über die eigene Bash auch über die CMD von Windows zulässt, kann man git direkt in VSC steuern. Es gibt allerdings auch ein paar grafische Oberflächen zur Verwaltung von git Repos unter Windows. Sind auf der git-Seite verlinkt. Konnte ich mich nicht mit anfreunden. War mir zu umständlich, nachdem ich git verstanden hatte.
Repositories werden nach ihrer Initiierung lokal im Arbeitsordner des Projektes angelegt. Wer das ganze mit einem Dienst wie github oder – wie ich – in Microsoft Azure DevOps verbindet, hat seine Versionierung auch online parat und ist nicht an ein Gerät gebunden. Außerdem geht der Entwicklungsstand beim Verlust der lokalen Daten nur bis zum letzten Commit bzw. Push flöten. Denn sind die Repos nur lokal angelegt, sind sie natürlich noch lange nicht vor Verlust gefeit. DevOps bietet übrigens meines Wissens nach keine Limitierung privater Projekte. Kostenlos. Erfordert nur eine Anmeldung bei Azure DevOps. Und nein, ich bekomme kein Geld dafür, das ich das schreibe.
Ich hoffe, ich konnte mit diesen Zeilen einen Eindruck schaffen, wofür git – und Versionsverwaltung im allgemeinen – gut ist. Und bevor ich meinen Text damit ruiniere, mich doch noch in dem Versuch zu verlieren, auf die wesentlichen Befehle von git einzugehen, komme ich wieder auf meine Überschrift zurück.
Der Schweizer Roger Dudler hat sich nämlich die Mühe gemacht, git sehr überschaubar und simpel zu erläutern. In nur wenigen Sätzen erklärt er die Befehle und wann man sie verwendet. Ok, zugegeben, diese Zusammenfassung ist wirklich arg eingedampft, aber ist ein richtig feiner Spickzettel. Noch weiter zusammengefasst hat er die Sache auf einem cheat sheet als einseitiges PDF am linken Rand der Seite. Der Roger hat es meiner Ansicht nach jedenfalls tierisch drauf, weil es da für den Einstieg echt nichts zu bemängeln gibt. Und wer mehr wissen will, kann auf Rogers Basis Google und die git Doku bemühen. Roger hat seine Seite übrigens in 17 Sprachen im Angebot.
Von mir gibts daher eine glasklare Empfehlung für Rogers Seite zu git. Und kein Schnick-Schnack.