13
Fachpraktikum Graphische Benutzungsoberflächen Wintersemester 2007/08 Mark Giereth, Steffen Koch, Christoph Müller, Guido Reina, Christiane Taras Versionsverwaltung

Fachpraktikum Graphische Benutzungsoberflächen Wintersemester 2007/08 Mark Giereth, Steffen Koch, Christoph Müller, Guido Reina, Christiane Taras Versionsverwaltung

Embed Size (px)

Citation preview

Page 1: Fachpraktikum Graphische Benutzungsoberflächen Wintersemester 2007/08 Mark Giereth, Steffen Koch, Christoph Müller, Guido Reina, Christiane Taras Versionsverwaltung

FachpraktikumGraphische BenutzungsoberflächenWintersemester 2007/08

Mark Giereth, Steffen Koch, Christoph Müller, Guido Reina, Christiane Taras

Versionsverwaltung

Page 2: Fachpraktikum Graphische Benutzungsoberflächen Wintersemester 2007/08 Mark Giereth, Steffen Koch, Christoph Müller, Guido Reina, Christiane Taras Versionsverwaltung

Institut für Visualisierung und Interaktive Systeme – Universität Stuttgart 2

Vorteile von Versionsverwaltungssystemen

Allgemein: Jede abgelegte Version einer Datei/eines Verzeichnisbaums kann

wiederhergestellt werden. Die Änderungen an Dateien und Verzeichnissen lassen sich über die Zeit hinweg

nachvollziehen. Bestimmte „Stände“ einer Software lassen sich als solche kennzeichnen und

wiederherstellen. Entwicklungen lassen sich in unterschiedliche Entwicklungszweige auftrennen (und

bei Bedarf wieder zusammenführen)

Bei der Software-Entwicklung im Team: Erlaubt eine einheitliche Sicht auf den aktuellen Entwicklungsstand einer Software. Bei gleichzeitigen Änderungen einer Quelldatei werden die Entwickler informiert,

bzw. wird Hilfe bei der Zusammenführung selbiger angeboten.

Page 3: Fachpraktikum Graphische Benutzungsoberflächen Wintersemester 2007/08 Mark Giereth, Steffen Koch, Christoph Müller, Guido Reina, Christiane Taras Versionsverwaltung

Institut für Visualisierung und Interaktive Systeme – Universität Stuttgart 3

Wie und warum wird ein Versionierungswerkzeug in diesem Fachpraktikum eingesetzt?

Sowohl die Aufgabenverteilung (Programmskelette) als auch die Abgabe erfolgt einheitlich über das Versionierungssystem.

Alle Stände lassen sich nach Abgabe einsehen (und kontrollieren, z.B. falls eine Änderung kurz vor Abgabe ein nicht lauffähiges Programm zur Folge hat).

Versionierungstools werden inzwischen bei nahezu jeder professionellen Entwicklung von Software in der Industrie eingesetzt. Kenntnisse auf diesem Gebiet können also später von Nutzen sein.

Page 4: Fachpraktikum Graphische Benutzungsoberflächen Wintersemester 2007/08 Mark Giereth, Steffen Koch, Christoph Müller, Guido Reina, Christiane Taras Versionsverwaltung

Institut für Visualisierung und Interaktive Systeme – Universität Stuttgart 4

Im Fachpraktikum eingesetztes Versionierungswerkzeug

Subversion (SVN): vergleichsweise neues Open Source Versionierungssystem gilt als Nachfolger des Concurrent Versioning System (CVS) Ausführliche Informationen unter http://svnbook.red-bean.com/ Die Adresse des SVN-Repositories für das Fachpraktikum lautet:

svn://vissvn/FaPraGUI/workspaces/WS07/<benutzername>/(Benutzername und Passwort für das SVN-Repository können bei den Betreuern erfragt werden)

TortoiseSVN (SVN-Client für Windows) SVN-Client mit graphischer Oberfläche lässt sich direkt über das Kontextmenü des Windows Explorer bedienen Die für das Fachpraktikum benötigte Funktionalität wird auf den

nachfolgenden Folien erläutert. Weitergehende Informationen finden sich unter: http://tortoisesvn.tigris.org/

Page 5: Fachpraktikum Graphische Benutzungsoberflächen Wintersemester 2007/08 Mark Giereth, Steffen Koch, Christoph Müller, Guido Reina, Christiane Taras Versionsverwaltung

TortoiseSVN – Mit einem Repository verbinden

Im Windows Explorer über das Kontextmenü TortoiseSVN > Repo-browser auswählen.

Repository-URL angeben(siehe vorige Folie)

Benutzername und Passwort für SVN eingeben

„Save authentication“-Häkchen setzen

Institut für Visualisierung und Interaktive Systeme – Universität Stuttgart 5

Page 6: Fachpraktikum Graphische Benutzungsoberflächen Wintersemester 2007/08 Mark Giereth, Steffen Koch, Christoph Müller, Guido Reina, Christiane Taras Versionsverwaltung

Institut für Visualisierung und Interaktive Systeme – Universität Stuttgart 6

TortoiseSVN – Checkout einer Aufgabe

Ordner der Aufgabe auswählenz.B. Ordner „1“

Zielordner (Checkout directory) z.B. auf dem „Home“-Laufwerk (Eigene Dateien) angeben.

Page 7: Fachpraktikum Graphische Benutzungsoberflächen Wintersemester 2007/08 Mark Giereth, Steffen Koch, Christoph Müller, Guido Reina, Christiane Taras Versionsverwaltung

Institut für Visualisierung und Interaktive Systeme – Universität Stuttgart 7

TortoiseSVN – Einstellungen anpassen

Der Ordner „Eigene Dateien“ ist auf ein Netzlaufwerk gemappt. Erfolgt ein „Checkout“ in diesen Ordner, so sollte unter „SVN-settings > Icon Overlays“ das Häkchen für Netzlaufwerke gesetzt werden.

Anschließend werden die SVN-Icons korrekt dargestellt.

Page 8: Fachpraktikum Graphische Benutzungsoberflächen Wintersemester 2007/08 Mark Giereth, Steffen Koch, Christoph Müller, Guido Reina, Christiane Taras Versionsverwaltung

Institut für Visualisierung und Interaktive Systeme – Universität Stuttgart 8

TortoiseSVN – „Commit“ einer Änderung

lokal geänderte Dateien werden mit einem roten Ausrufezeichen am Dateisymbol markiert (im Bild „Stoppuhr.ccp“)

Dateien, die mit grünen Haken versehen sind, wurden seit dem Checkout bzw. dem letzten Update nicht verändert.

Soll eine Änderung in das Repository eingepflegt werden so geschieht dies über den Befehl „SVN Commit“ des Kontextmenüs.

Anschließend öffnet sich ein Dialog der es erlaubt einen sinnvollen Kommentar zu den durchgeführten Änderungen anzugeben

Page 9: Fachpraktikum Graphische Benutzungsoberflächen Wintersemester 2007/08 Mark Giereth, Steffen Koch, Christoph Müller, Guido Reina, Christiane Taras Versionsverwaltung

Institut für Visualisierung und Interaktive Systeme – Universität Stuttgart 9

Ich möchte von zu Hause arbeiten! – Wie erhalte ich Zugriff auf das Repository?

Es ist möglich sich mittels SSH einen sogenannten Tunnel anzulegen und damit (auch von zu Hause) auf das SVN-Repository zuzugreifen.

Erforderlich hierfür sind: Ein SSH-Client, ein SVN-Client.

Auf den weiteren Folien folgt eine Anleitung welche den Zugriff anhand von PuTTY und TortoiseSVN erläutert.

PuTTY: http://www.chiark.greenend.org.uk/~sgtatham/putty/TortoiseSVN: http://tortoisesvn.tigris.org/

Page 10: Fachpraktikum Graphische Benutzungsoberflächen Wintersemester 2007/08 Mark Giereth, Steffen Koch, Christoph Müller, Guido Reina, Christiane Taras Versionsverwaltung

Institut für Visualisierung und Interaktive Systeme – Universität Stuttgart 10

SSH-Tunnel einrichten mit PuTTY

Schritt1:PuTTY starten und unter „Session“ folgende URL eingeben:newwave.informatik.uni-stuttgart.de

Schritt2:Unter Connection>SSH>Tunnel folgende Einstellungen vornehmen: Unter „Source port1“ 3690 eintragen Unter „Destination“ vissvn.informatik.uni-

stuttgart.de:3690 eintragen. Anschließend mit „Add“ hinzufügen

1) Bei Port 3690 handelt es sich um den Default-Port von SVN. Diesen natürlich nur benutzen wenn er frei ist!

Page 11: Fachpraktikum Graphische Benutzungsoberflächen Wintersemester 2007/08 Mark Giereth, Steffen Koch, Christoph Müller, Guido Reina, Christiane Taras Versionsverwaltung

Institut für Visualisierung und Interaktive Systeme – Universität Stuttgart 11

SSH-Tunnel einrichten mit PuTTY

Schritt 3:Wieder auf „Session“ wechseln, einen Namen für die Verbindung unter „Saved Sessions“ eintragen und abspeichern.

Schritt 4:Da der Tunnel auf dem Heimrechner an Port 3690 endet, muss bei TortoiseSVN entsprechend „svn://localhost:3690/FaPraGUI/workspaces/WS07/<benutzername>/ “ als Repository angegeben werden.

Page 12: Fachpraktikum Graphische Benutzungsoberflächen Wintersemester 2007/08 Mark Giereth, Steffen Koch, Christoph Müller, Guido Reina, Christiane Taras Versionsverwaltung

Institut für Visualisierung und Interaktive Systeme – Universität Stuttgart 12

Bemerkungen zur „Heimarbeit“

Die Lauffähigkeit der Programme wird bei Abgabe auf einem der Rechner im VIS-Pool überprüft. Lösungen die ausschließlich zu Hause ohne Fehler laufen, können daher nicht oder nur mit Punktabzug gewertet werden.

Es gibt keinen „Support“ für technische Probleme außerhalb des VIS-Pools.

Prinzipiell spricht nichts dagegen, dass die Aufgaben für das Fachpraktikum zu Hause bearbeitet werden. Hierbei gilt es jedoch folgende Punkte zu beachten:

Page 13: Fachpraktikum Graphische Benutzungsoberflächen Wintersemester 2007/08 Mark Giereth, Steffen Koch, Christoph Müller, Guido Reina, Christiane Taras Versionsverwaltung

Fragen?