Git – Ein Spickzettel für den Alltag

add, commit, pull, push und stash sind nur einige Begriffe, mit denen sich nicht nur die Entwickler von FDS und Smokeview seit ein paar Tagen beschäftigen. Mit dem Wechsel des Versionskontrollsystems dürfen sich auch die ambitionierten Anwender des Programms in eine – vielleicht bisher unbekannte Welt – begeben.

Im April 2005 konnten die Entwickler des Linux-Kernels aufgrund einer Änderung der Lizenz die bisherige Versionskontrolle nicht mehr kostenlos nutzen. Linus Torvalds, Initiator sowie treibende Kraft bei der Entwicklung des Linux-Kernels, machte sich daraufhin an die Arbeit und entwickelte innerhalb weniger Tage ein neues Versionskontrollsystem – Git war entstanden. Das System zeichnet sich dadurch aus, dass jeder Benutzer eine lokale Kopie des gesamten Repositorys, inklusive der Versionsgeschichte, besitzt. Ein Vorteil davon ist, dass die meisten Aktionen lokal und ohne Netzwerkzugriff ausgeführt werden können.

Git – Befehle und Zusammenhänge im Schnelldurchlauf



Git-cheat-sheet_F-Sim_web

Für die Nutzung der Versionskontrolle in Bezug auf das Programm Fire Dynamics Simulator sind die nachfolgend beschriebenen Befehle von Bedeutung:

Mit dem Befehl git clone wird eine lokale Kopie des aktuellen Repository angelegt:
git clone https://github.com/firemodels/fds-smv.git

Mit dem Befehl git status erhält man eine Übersicht über neue noch nicht versionierte Dateien, über Änderungen an bestehenden (versionierten) Dateien, über Änderungen in der Sammlung (staging), über Konflikte und den aktuellen Entwicklungsstrang (brunch).

Die lokale Kopie kann mit dem Befehl git pull aktualisiert werden. Hierbei werden alle Änderungen heruntergeladen und Konflikte zwischen der lokalen und entfernten Version zusammengeführt.

Bei Konflikten zwischen der lokalen und entfernten Version werden die Änderungen automatisch zusammengefügt und nachfolgend gekennzeichnet:

<<<<<< head Änderung in der heruntergeladenen Kopie ======= Änderung in der lokalen Kopie >>>>>> brunch

Nach der Änderung und Beseitigung des Konfliktes durch den Besitzer der lokalen Kopie beziehungsweise bei allgemeinen Änderungen in einer Datei, ist/sind diese für die Übernahme in die nächste Version entsprechend zu kennzeichnen (git add [file]). Soll nun eine oder mehrere Dateien zu einer neuen Version in der lokalen Kopie zusammengefasst werden, ist/sind dies(e) mit einer entsprechenden Meldung (-m „[Meldung]“) zu versionieren (git commit -m „[Meldung]“).

Existiert neben der lokalen Kopie auch ein zentrales Repository auf einem Server (z.B. http://github.com), kann die neue Version der lokale Kopie mit dem Befehl git push in die zentrale Kopie übertragen bzw. übergeben werden. Liegen für die zentrale Version keine Schreibrechte vor, können die Änderungen mit dem Befehl git request dem Eigentümer (Entwickler) zur Durchsicht und Übernahme des Vorschlages zugesendet werden.

Eine Zusammenfassung der Zusammenhänge und der wesentlichen Befehle kann dem kleinen Git-Spickzettel und dem Wiki der FDS-SMV Entwickler entnommen werden.

WordPress Cookie Hinweis von Real Cookie Banner