Noobis.de - Wir helfen weiter !


Banner Picture
GIT für Webseitenentwicklung nutzen PDF Drucken E-Mail
Benutzerbewertung: / 1
SchwachPerfekt 
Tutorial Übersicht - Developer Tutorials
Mittwoch, 17. August 2011 um 08:40
Bei der Webseiten- oder Projektentwicklung gilt es ein wichtiges Qualitätsmerkmal des Qualitätsmanagements einzuhalten: Nachverfolgbarkeit der Änderungen.

Ansonsten ist es auch immer schön, wenn man Änderungen nachvollziehen kann und im Notfall Rollbacks durchführen kann.

Die herkömmliche Art eines Backups greift hier dann nur noch bedingt - bzw. garnicht mehr, wenn man auch noch verschiedene Versionen entwickelt.

Bisher war daher Subversion ein schönes Tool, um Änderungen eines Projektes nachzuverfolgen. Doch in letzter Zeit gewinnt GIT immer mehr an Bedeutung. Das beste Beispiel für ein Projekt das über GIT geführt wird ist der Linux-Kernel selbst ;-)

Bisher ist es aber noch schwierig an geeignete Tutorials zu kommen, daher zeigen wir hier eines auf.

1. Gundlagen

GIT ist ein Versionskontrolle Tool. Alle Informationen über GIT findet man direkt auf der Hersteller-Webseite.
Damit man Änderungen übersichtlich nachverfolgen kann, kann man auch eine grafische Oberfläche nutzen. Für Windows gefiel mir das Smartgit sehr gut. Dies kann man hier beziehen: Hersteller-Webseite

Außerdem gehen wir davon aus, dass die Webseite auf einem Lenny Server läuft. Die Entwicklung jedoch auf einem Client-System mit Windows7 64-Bit.

2. Installation der Komponenten

Wir machen unseren Webserver fit mit Git. Hierfür installieren wir die notwendigen Pakete direkt:

apt-get install git-core

Fertig. Git ist auf dem Server nun installiert.

Als nächstes wechseln wir in unser Verzeichnis, welches mittels GIT überwacht werden soll:

mkdir /var/www/webseite && cd /var/www/webseite

Wir gehen davon aus, dass alle Dateien im Verzeichnis webseite liegen - auch die index.php.

Erst sagen wir GIT wer wir sind:

git config --global user.name "Noobis.de"
git config --global user.email " Diese E-Mail-Adresse ist gegen Spambots geschützt! Sie müssen JavaScript aktivieren, damit Sie sie sehen können. "


GIT kennt uns nun. Damit wir das Verzeichnis nun überwachen können, initialisieren wir GIT:

git init


Jetzt markieren wir alle Dateien für die Überwachung:

git add .


Damit die Änderungen übernommen werden, geben wir folgendes ein:

git commit -m "Bemerkung: Hier steht die Notiz für unser Commit. Beispiel hier: Initialisierung des Verzeichniess"

Das war´s. GIT überwacht nun das Verzeichnis via Versionierung.

2. Einrichtung des Clients unter Windows

Wie wir vorher schon ankündigten, benutzen wir Smartgit zur Verwaltung des Repos.

Da wir unter Windows nicht auf die Versionierung angewiesen sind, können wir das Portable Git herunterladen und in einen Ordner unserer Wahl entpacken. Das Portable GIT gibt es hier auf der Download-Seite.

Jetzt besorgen wir uns Smartgit hier.

Nach der Installation starten wir Smartgit und laden uns eine lokale Kopie herunter. Vorsicht: der Zugang zum Repo ist immer nur per SSH oder SSH Keys möglich. Weils einfacher ist, verwenden wir SSH. Der Pfad zum Repo ist absolut! Er wäre in unserem Fall: ssh:USER@SERVER:PORT/var/www/webseite/.git


Das wars ;-)

Wenn wir nun lokal eine Datei ändern, können wir diese mit Smartgit comiten. Aber ... wieso werden nur die Logs übernommen, unsere Dateiänderungen jedoch nicht? Hier ist GIT etwas Tricky. Da man in GIT auch Branches verwalten kann, werden die Änderungen erstmal nur im Verzeichnis /var/www/webseite/.git gespeichert.

3. GIT automatisch arbeiten lassen

Wir brauchen generell keine Branches für Webseiten. Daher kann GIT die Änderungen an den Dateien direkt in den Master-Branch - also unserer Webseite - laden. Hierfür müssen wir das .git Verzeichnis etwas anpassen.

Dies geschieht wie folgt. Wir nutzen die Technik der hooks hierfür um das Checkout direkt von GIT durchführen zu lassen. Daher wechseln wir in das Verzeichnis /var/www/webseite/.git/hooks/ und fügen folgendes bei der Datei post-receive hinzu:

#!/bin/sh
GIT_WORK_TREE=/var/www/webseite git checkout -f

Danach machen wir die Datei noch ausführbar mittels: chmod +x /var/www/webseite/.git/hooks/post-receive

Jetzt sind wir fertig. Sobald wir lokal eine Datei ändern, wechseln wir zum Smartgit Client. Dieser zeigt uns schon an, dass die Datei X geändert wurde. Wir comiten unser Ergebnis geben eine Notiz ein und wählen den Punkt "push after commit". Wechseln wir nun zur Webseite, sehen wir das die Änderungen an der Datei direkt übernommen wurden.

4. Anmerkungen

Der Client kann sehr viel. Trotzdem schauen wir uns noch ein paar Server Befehle an:

 - git log => Ausgabe der Änderungen
 - git status => Zuverarbeitende Änderungen werden hier angezeigt

Achtung: GIT ersetzt kein Backup! Daher - erstelllen Sie weiterhin Backups wann immer es Ihnen nötig erscheint.

Weiterführendes: Ein weitgehendes, englisches, Tutorial können Sie hier finden: toroid.org

Aktualisiert ( Mittwoch, 17. August 2011 um 09:12 )
 

Comments

B
i
u
Quote
Code
List
List=
[*]
URL
Name *
Email (For verification & Replies)
URL
Code   
ChronoComments by Joomla Professional Solutions
Submit Comment
Working....
Finished
Failed