
Nach einiger Zeit der Pause, nehme ich doch den zweiten Teil meiner Anleitung in Angriff. Im ersten Teil ging es darum, wie man git bei einem webhoster installieren kann. Nun geht es ans Eingemachte und wir werden die grundlegenden Arbeitsweisen von git kennenlernen. Auch wenn git ziemlich umfangreiche Funktionen bietet, braucht man im Alltag nicht viel zu wissen. Erst wenn man direkt in das Repository (das heisst den Snapshot der gespeicherten Dateien) eingreifen will, muss man teils recht knifflige Befehle eingeben. Da aber git prinzipiell “out-of-the-box” funktioniert, kann man mit einfachen Funktionen beginnen und später, wenn man dann unbedingt etwas bestimmtes bewerkstelligt haben will, das Netz nach Antworten durchforsten.
An dieser Stelle möchte ich allen wärmstens das kostenlose ebook “Pro Git” empfehlen:
Bevor wir loslegen können, müssen wir git natürlich erst einmal lokal installieren. Dazu gibt es verschiedene Möglichkeiten:
1. git von XCode verwenden
Solltest du schon die Developer Tools von Apple installiert haben, so hast du git schon auf deiner Maschine. Damit aber alles richtig funktioniert, sollte das Terminal wissen, wo der git Befehl zu finden ist. Erstelle zu diesem Zweck eine reine Textdatei in deinem Heimatverzeichnis namens “.bashrc”. Darin sollte folgende Zeile stehen:
export PATH=/Developer/usr/bin:$PATH
Am einfachsten erstellst du diese Datei übrigens direkt im Terminal, aber natürlich kannst du auch einen beliebigen Texteditor dazu verwenden.
Um zu testen, ob git nun gefunden wird, öffnest du ein neues Terminal-Fenster und gibst ein:
git --version
Hat alles geklappt, sollten nun Versionsinformationen angegeben werden. Meckert dein Terminal, dass es den Befehl git nicht finden kann, scheint irgendetwas noch nicht in Ordnung zu sein. Du kannst mit folgendem Befehl überprüfen, ob du den Pfad zu git korrekt eingegeben hast, bzw. ob dieser von der Shell erkannt wird:
echo $PATH
Hier sollte der Eintrag “/Developer/usr/bin” auftauchen.
2. git installieren
Sind die Apple Developer Tools nicht installiert, kann man git natürlich auch direkt installieren. Die Installationspakete findet man hier:
3. Ein Git-Programm verwenden
Es gibt schon einige Programme für den Mac, welche die Arbeit mit git erleichtern und auch git enthalten. Sehr empfehlen kann ich Tower undgitBox, da diese perfekt auf OS X abgestimmt sind. Ich selber benutze praktisch nur noch Tower, wenn dieses Programm aber doch etwas träger arbeitet als gitBox. Es bietet einfach mehr Möglichkeiten.
Dateien und Ordner mit git verfolgen: Das Erstellen eines git Repositories
Natürlich reicht es nicht, git installiert zu haben. Will man Ordner und Dateien versionieren, muss man dies git explizit sagen und diese in ein git Repository umwandeln. Dies ist der erste Schritt, um mit git zu arbeiten.
Leeres git Repository erstellen
Wenn man ein neues git Repository erstellen will, um dann Dateien darin abzulegen und Versionen davon speichern will, erstellen wir einfach einen neuen leeren Ordner. Anschliessend ruft man den Befehl “git init” auf, um die nötigen Initialisierungen vorzunehmen. Gehen wir also ins Terminal und geben folgendes ein:
mkdir meinGitRepository
cd meinGitRepository
git init
Git erstellt nun einen unsichtbaren Ordner “.git”, in welchem alle Einstellungen und Dateiversionen abgelegt werden. Nach der Eingabe obiger Befehle, sollte man folgendes im Terminal als Rückmeldung erhalten:
Initialized empty Git repository in /Users/cric/Desktop/tmp/meinGitRepository/.git/
Das Verzeichnis ist nun bereit für die Arbeit mit git.
Bestehenden Ordner für git vorbereiten
Einen bestehenden Ordner für git vorzubereiten funktioniert genau gleich wie oben beschrieben, ausser dass man das Verzeichnis nicht erst erstellen muss. Also: in den Ordner wechseln und dann “git init” aufrufen. Dabei wird in dem bestehenden Ordner ebenso ein unsichtbares Verzeichnis “.git” erstellt. Um nun die schon bestehenden Dateien in die git “Datenbank” aufzunehmen, gibt man folgende Befehle ein (mehr dazu folgt später):
git add .
git commit -m "Mein Erster Commit"
Was geschieht dabei? Der Befehl “git add .” sagt git, dass es die bestehenden Dateien in einen sogenannten “Index” aufnehmen soll. Der Index bereitet die Daten sozusagen vor, um dann mit dem nächsten Befehl “git commit” tatsächlich in die Datenbank aufzunehmen. Die Option “-m” mit anschliessendem Text erstellt zu der Aufnahme in die Datenbank einen Kommentar. Bei jeder neuen Aufnahme der Dateien in die Datenbank sollte man unbedingt einen solchen Kommentar angeben. Das erleichtert später die Suche nach einer bestimmten Version und kann auch sehr schön zeigen, wie sich ein Projekt weiter entwickelt hat.
Ein git Repository klonen
Es bestehen auf dem Netz schon eine grosse Menge an spannender Projekte, welche git als Versionskontrolle einsetzen. Bei github.com findet man zum Beispiel viele spannende Sourcen. Da git eigentlich dazu gedacht ist, in einem Team zu arbeiten, kommt dem “Aus-checken/Arbeiten/Ein-Checken” von Sourcen eine grosse Bedeutung zu. Hat man ein spannendes Projekt gefunden, kann man dieses mit sämtlichen Dateien auf die eigene Festplatte laden und erhält gleichzeitig ein schon bestehendes Repository. Um ein solches Projekt zu erhalten, muss man die URL dazu kennen. Das Klonen eines github Projekts könnte etwa so aussehen:
git clone git://github.com/schacon/grit.git
Dies erstellt ein neues Verzeichnis “grit” und lädt anschliessend alle Dateien, die benötigt werden in dieses Verzeichnis. Dieser Ordner kann nun mit git kontrolliert werden.
Ein Repository ohne Dateien: git –bare init
Insbesondere, wenn man in einem Team arbeitet, soll ein “Master”-Git-Repository bestehen, von welchem alle ihre Dateien beziehen, bzw. die Änderungen wieder hinauf laden. Es ist dabei unbedingt zu empfehlen, dieses Master-Repository als “Blanko”-Git Repository zu erstellen, damit es keine Probleme gibt. Da dies für meine kurze Einführung in git zu weit ginge, genauer zu erklären, wieso dies so ist, verzichte ich darauf. Wir werden jedoch diesen Befehl antreffen, wenn wir unsere Webseite mit git managen werden.
Ein paar Grundregeln zum Schluss
Der Befehl “commit” entspricht eigentlich dem “Speichern” Befehl in Programmen. Ohne “commit” werden keine Dateien in die Datenbank aufgenommen. Also relativ häufig “commiten”.
Der Standardablauf um Dateien mit git zu verfolgen ist:
1. Änderungen an Dateien vornehmen (z.B. HTML-Seiten erstellen/abändern)
2. Git mit “git add .” mitteilen, dass alle Änderungen in den Index aufgenommen werden und für die Aufnahme in die Datenbank vorbereitet werden
3. Die Dateien in einem “Snapshot” in git aufnehmen mit dem Befehl “git commit -m ‘Kommentar’”
Was folgt
In den nächsten Folgen werden wir sehen, wie wir Dateien aus früheren Versionen wieder herstellen können, wie wir am besten mit git arbeiten und natürlich: wie wir unsere Webseite am einfachsten mit git managen.
Website Management mit Git Teil 2,

