Upload
others
View
14
Download
0
Embed Size (px)
Citation preview
Versionsverwaltung mit SVN
Jan-Philipp Kappmeier
Technische Universität Berlin
11. 04. 2012
Grundlagen SVN mit Eclipse SVN mit NetBeans
Versionsverwaltung
Typische Situation in der Softwareentwicklung
Mehrere Personen arbeiten an einem Projekt
Arbeiten gleichzeitig
Änderungen müssen eventuell rückgängig gemacht werden
Einige Features sollen nur Probeweise implementiert werden
Es treten Fehler auf, und keiner will es gewesen sein
á Geeignetes Hilfsmittel: Versionsverwaltung
Beispiel
Wikipedia
Linux-Kernel
Google Summer of Code
2 / 29
Grundlagen SVN mit Eclipse SVN mit NetBeans
Versionsverwaltung forts.
Der aktuelle Stand des Projektes ist in einem Repository (Lager)gespeichert
Jeder Nutzer hat eine lokale Kopie zum Arbeiten
Wenn der Nutzer mit seinen Änderungen zufrieden ist, kann er sie indas Repository einchecken (commit)
Jeder nutzer kann seine lokale Kopie auf den neuesten Standbringen (update)
Beispiel
Zentrale Systeme:CVS (alt)Subversion (SVN)
Verteilte Systeme:Mercurial, Git
3 / 29
Grundlagen SVN mit Eclipse SVN mit NetBeans
Funktionsweise von SVN
Unabhängige Verwaltung jeder Datei im Projekt
Alle eingecheckten Versionen jeder Datei werden archiviert
Mehrere Benutzer können (in ihren Kopieen) gleichzeitig amgleichen Projekt (auch Datei) arbeiten
Repository zählt Versionsnummern.
Wachsen bei jedem Einchecken, Dateien mit höheren Nummernsind aktueller
Arbeitszyklus
1 Update auf die aktuellste Version
2 Bearbeiten der Dateien
3 Einchecken der Änderungen ins Repository (Achtung, nurSource-Dateien!)
4 / 29
Grundlagen SVN mit Eclipse SVN mit NetBeans
Versionskonflikte
1 Radikale Lösung: Änderungen eines Benutzers verwerfen
2 Vergleichen und Mischen der DateienMöglich, wenn zwei Benutzer jeweils eine neue Funktiongeschrieben haben
á SVN enthält ein Merge-Tool das in den meisten Fällen automatisch dieDateiversionen mischt
5 / 29
Grundlagen SVN mit Eclipse SVN mit NetBeans
SVN-Software
SVN-Kommandozeilehttp://subversion.apache.org/
TortoiseWindows-Software mit Einbindung in Explorerhttp://tortoisesvn.net/
SmartSVNSVN-Client für verschiedene Betriebssystemehttp://www.syntevo.com/smartsvn/
6 / 29
Grundlagen SVN mit Eclipse SVN mit NetBeans
SVN mit Eclipse
Um eine erste lokale Kopie zu erhalten, muss ein Projektausgecheckt werden
In Eclipse wird SVN mit dem Plugin Subclipse unterstützt (alt)http://subclipse.tigris.org/
In Eclipse wird SVN mit dem Plugin Subversive unterstützt (neuer)http://download.eclipse.org/technology/subversive/0.7/update-site/
Dies ist im Unix-Pool bereits eingerichtet
7 / 29
Grundlagen SVN mit Eclipse SVN mit NetBeans
Ein neues Projekt anlegen
8 / 29
Grundlagen SVN mit Eclipse SVN mit NetBeans
Als Projekttyp SVN auswählen
9 / 29
Grundlagen SVN mit Eclipse SVN mit NetBeans
Repository auswählen (oder Neues eingeben)
10 / 29
Grundlagen SVN mit Eclipse SVN mit NetBeans
Revision auswählen (HEAD = aktuellste)
11 / 29
Grundlagen SVN mit Eclipse SVN mit NetBeans
Ein Projekt anlegen
12 / 29
Grundlagen SVN mit Eclipse SVN mit NetBeans
Das Projekt im Explorer betrachten und freuen
13 / 29
Grundlagen SVN mit Eclipse SVN mit NetBeans
Änderungen einreichen
14 / 29
Grundlagen SVN mit Eclipse SVN mit NetBeans
Hinweistext eingeben und einzureichende Dateienauswählen
15 / 29
Grundlagen SVN mit Eclipse SVN mit NetBeans
Fehler bei Versionskonflikt
16 / 29
Grundlagen SVN mit Eclipse SVN mit NetBeans
SYNCHRONIZE WITH REPOSITORY auswählen, Korrigierenund MARK AS MERGED
17 / 29
Grundlagen SVN mit Eclipse SVN mit NetBeans
Existierendes Projekt ins SVN laden: Rechtsklick auf PA2
18 / 29
Grundlagen SVN mit Eclipse SVN mit NetBeans
Existierendes Projekt ins SVN laden: SVN wählen
19 / 29
Grundlagen SVN mit Eclipse SVN mit NetBeans
Existierendes Projekt ins SVN laden: Repo. wählen
20 / 29
Grundlagen SVN mit Eclipse SVN mit NetBeans
Existierendes Projekt ins SVN laden: Struktur im SVN setzen
21 / 29
Grundlagen SVN mit Eclipse SVN mit NetBeans
Existierendes Projekt ins SVN laden: Kommentar ergänzen
22 / 29
Grundlagen SVN mit Eclipse SVN mit NetBeans
Existierendes Projekt ins SVN laden: nur *.java und Ordner
23 / 29
Grundlagen SVN mit Eclipse SVN mit NetBeans
SVN mit NetBeans
Um eine erste lokale Kopie zu erhalten, muss ein Projektausgecheckt werden
Ein SVN-Plugin ist in NetBeans meistens vorinstalliertsonst: Nachholen über Menü TOOLS | PLUGINS
Ein SVN-Client muss auf dem Rechner installiert sein
24 / 29
Grundlagen SVN mit Eclipse SVN mit NetBeans
Ein Repository Auschecken
25 / 29
Grundlagen SVN mit Eclipse SVN mit NetBeans
Pfad und Passwort angeben
26 / 29
Grundlagen SVN mit Eclipse SVN mit NetBeans
Lokalen Speicherort auswählen
27 / 29
Grundlagen SVN mit Eclipse SVN mit NetBeans
Ein Repository Auschecken
28 / 29
Grundlagen SVN mit Eclipse SVN mit NetBeans
Projekt erstellen
29 / 29