![Page 1: Versionsverwaltung mit SVN - coga.tu-berlin.de · Grundlagen SVN mit Eclipse SVN mit NetBeans Versionsverwaltung Typische Situation in der Softwareentwicklung Mehrere Personen arbeiten](https://reader031.vdocuments.pub/reader031/viewer/2022040312/5e02f48dd9e2ea2f204112e4/html5/thumbnails/1.jpg)
Versionsverwaltung mit SVN
Jan-Philipp Kappmeier
Technische Universität Berlin
11. 04. 2012
![Page 2: Versionsverwaltung mit SVN - coga.tu-berlin.de · Grundlagen SVN mit Eclipse SVN mit NetBeans Versionsverwaltung Typische Situation in der Softwareentwicklung Mehrere Personen arbeiten](https://reader031.vdocuments.pub/reader031/viewer/2022040312/5e02f48dd9e2ea2f204112e4/html5/thumbnails/2.jpg)
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
![Page 3: Versionsverwaltung mit SVN - coga.tu-berlin.de · Grundlagen SVN mit Eclipse SVN mit NetBeans Versionsverwaltung Typische Situation in der Softwareentwicklung Mehrere Personen arbeiten](https://reader031.vdocuments.pub/reader031/viewer/2022040312/5e02f48dd9e2ea2f204112e4/html5/thumbnails/3.jpg)
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
![Page 4: Versionsverwaltung mit SVN - coga.tu-berlin.de · Grundlagen SVN mit Eclipse SVN mit NetBeans Versionsverwaltung Typische Situation in der Softwareentwicklung Mehrere Personen arbeiten](https://reader031.vdocuments.pub/reader031/viewer/2022040312/5e02f48dd9e2ea2f204112e4/html5/thumbnails/4.jpg)
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
![Page 5: Versionsverwaltung mit SVN - coga.tu-berlin.de · Grundlagen SVN mit Eclipse SVN mit NetBeans Versionsverwaltung Typische Situation in der Softwareentwicklung Mehrere Personen arbeiten](https://reader031.vdocuments.pub/reader031/viewer/2022040312/5e02f48dd9e2ea2f204112e4/html5/thumbnails/5.jpg)
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
![Page 6: Versionsverwaltung mit SVN - coga.tu-berlin.de · Grundlagen SVN mit Eclipse SVN mit NetBeans Versionsverwaltung Typische Situation in der Softwareentwicklung Mehrere Personen arbeiten](https://reader031.vdocuments.pub/reader031/viewer/2022040312/5e02f48dd9e2ea2f204112e4/html5/thumbnails/6.jpg)
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
![Page 7: Versionsverwaltung mit SVN - coga.tu-berlin.de · Grundlagen SVN mit Eclipse SVN mit NetBeans Versionsverwaltung Typische Situation in der Softwareentwicklung Mehrere Personen arbeiten](https://reader031.vdocuments.pub/reader031/viewer/2022040312/5e02f48dd9e2ea2f204112e4/html5/thumbnails/7.jpg)
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
![Page 8: Versionsverwaltung mit SVN - coga.tu-berlin.de · Grundlagen SVN mit Eclipse SVN mit NetBeans Versionsverwaltung Typische Situation in der Softwareentwicklung Mehrere Personen arbeiten](https://reader031.vdocuments.pub/reader031/viewer/2022040312/5e02f48dd9e2ea2f204112e4/html5/thumbnails/8.jpg)
Grundlagen SVN mit Eclipse SVN mit NetBeans
Ein neues Projekt anlegen
8 / 29
![Page 9: Versionsverwaltung mit SVN - coga.tu-berlin.de · Grundlagen SVN mit Eclipse SVN mit NetBeans Versionsverwaltung Typische Situation in der Softwareentwicklung Mehrere Personen arbeiten](https://reader031.vdocuments.pub/reader031/viewer/2022040312/5e02f48dd9e2ea2f204112e4/html5/thumbnails/9.jpg)
Grundlagen SVN mit Eclipse SVN mit NetBeans
Als Projekttyp SVN auswählen
9 / 29
![Page 10: Versionsverwaltung mit SVN - coga.tu-berlin.de · Grundlagen SVN mit Eclipse SVN mit NetBeans Versionsverwaltung Typische Situation in der Softwareentwicklung Mehrere Personen arbeiten](https://reader031.vdocuments.pub/reader031/viewer/2022040312/5e02f48dd9e2ea2f204112e4/html5/thumbnails/10.jpg)
Grundlagen SVN mit Eclipse SVN mit NetBeans
Repository auswählen (oder Neues eingeben)
10 / 29
![Page 11: Versionsverwaltung mit SVN - coga.tu-berlin.de · Grundlagen SVN mit Eclipse SVN mit NetBeans Versionsverwaltung Typische Situation in der Softwareentwicklung Mehrere Personen arbeiten](https://reader031.vdocuments.pub/reader031/viewer/2022040312/5e02f48dd9e2ea2f204112e4/html5/thumbnails/11.jpg)
Grundlagen SVN mit Eclipse SVN mit NetBeans
Revision auswählen (HEAD = aktuellste)
11 / 29
![Page 12: Versionsverwaltung mit SVN - coga.tu-berlin.de · Grundlagen SVN mit Eclipse SVN mit NetBeans Versionsverwaltung Typische Situation in der Softwareentwicklung Mehrere Personen arbeiten](https://reader031.vdocuments.pub/reader031/viewer/2022040312/5e02f48dd9e2ea2f204112e4/html5/thumbnails/12.jpg)
Grundlagen SVN mit Eclipse SVN mit NetBeans
Ein Projekt anlegen
12 / 29
![Page 13: Versionsverwaltung mit SVN - coga.tu-berlin.de · Grundlagen SVN mit Eclipse SVN mit NetBeans Versionsverwaltung Typische Situation in der Softwareentwicklung Mehrere Personen arbeiten](https://reader031.vdocuments.pub/reader031/viewer/2022040312/5e02f48dd9e2ea2f204112e4/html5/thumbnails/13.jpg)
Grundlagen SVN mit Eclipse SVN mit NetBeans
Das Projekt im Explorer betrachten und freuen
13 / 29
![Page 14: Versionsverwaltung mit SVN - coga.tu-berlin.de · Grundlagen SVN mit Eclipse SVN mit NetBeans Versionsverwaltung Typische Situation in der Softwareentwicklung Mehrere Personen arbeiten](https://reader031.vdocuments.pub/reader031/viewer/2022040312/5e02f48dd9e2ea2f204112e4/html5/thumbnails/14.jpg)
Grundlagen SVN mit Eclipse SVN mit NetBeans
Änderungen einreichen
14 / 29
![Page 15: Versionsverwaltung mit SVN - coga.tu-berlin.de · Grundlagen SVN mit Eclipse SVN mit NetBeans Versionsverwaltung Typische Situation in der Softwareentwicklung Mehrere Personen arbeiten](https://reader031.vdocuments.pub/reader031/viewer/2022040312/5e02f48dd9e2ea2f204112e4/html5/thumbnails/15.jpg)
Grundlagen SVN mit Eclipse SVN mit NetBeans
Hinweistext eingeben und einzureichende Dateienauswählen
15 / 29
![Page 16: Versionsverwaltung mit SVN - coga.tu-berlin.de · Grundlagen SVN mit Eclipse SVN mit NetBeans Versionsverwaltung Typische Situation in der Softwareentwicklung Mehrere Personen arbeiten](https://reader031.vdocuments.pub/reader031/viewer/2022040312/5e02f48dd9e2ea2f204112e4/html5/thumbnails/16.jpg)
Grundlagen SVN mit Eclipse SVN mit NetBeans
Fehler bei Versionskonflikt
16 / 29
![Page 17: Versionsverwaltung mit SVN - coga.tu-berlin.de · Grundlagen SVN mit Eclipse SVN mit NetBeans Versionsverwaltung Typische Situation in der Softwareentwicklung Mehrere Personen arbeiten](https://reader031.vdocuments.pub/reader031/viewer/2022040312/5e02f48dd9e2ea2f204112e4/html5/thumbnails/17.jpg)
Grundlagen SVN mit Eclipse SVN mit NetBeans
SYNCHRONIZE WITH REPOSITORY auswählen, Korrigierenund MARK AS MERGED
17 / 29
![Page 18: Versionsverwaltung mit SVN - coga.tu-berlin.de · Grundlagen SVN mit Eclipse SVN mit NetBeans Versionsverwaltung Typische Situation in der Softwareentwicklung Mehrere Personen arbeiten](https://reader031.vdocuments.pub/reader031/viewer/2022040312/5e02f48dd9e2ea2f204112e4/html5/thumbnails/18.jpg)
Grundlagen SVN mit Eclipse SVN mit NetBeans
Existierendes Projekt ins SVN laden: Rechtsklick auf PA2
18 / 29
![Page 19: Versionsverwaltung mit SVN - coga.tu-berlin.de · Grundlagen SVN mit Eclipse SVN mit NetBeans Versionsverwaltung Typische Situation in der Softwareentwicklung Mehrere Personen arbeiten](https://reader031.vdocuments.pub/reader031/viewer/2022040312/5e02f48dd9e2ea2f204112e4/html5/thumbnails/19.jpg)
Grundlagen SVN mit Eclipse SVN mit NetBeans
Existierendes Projekt ins SVN laden: SVN wählen
19 / 29
![Page 20: Versionsverwaltung mit SVN - coga.tu-berlin.de · Grundlagen SVN mit Eclipse SVN mit NetBeans Versionsverwaltung Typische Situation in der Softwareentwicklung Mehrere Personen arbeiten](https://reader031.vdocuments.pub/reader031/viewer/2022040312/5e02f48dd9e2ea2f204112e4/html5/thumbnails/20.jpg)
Grundlagen SVN mit Eclipse SVN mit NetBeans
Existierendes Projekt ins SVN laden: Repo. wählen
20 / 29
![Page 21: Versionsverwaltung mit SVN - coga.tu-berlin.de · Grundlagen SVN mit Eclipse SVN mit NetBeans Versionsverwaltung Typische Situation in der Softwareentwicklung Mehrere Personen arbeiten](https://reader031.vdocuments.pub/reader031/viewer/2022040312/5e02f48dd9e2ea2f204112e4/html5/thumbnails/21.jpg)
Grundlagen SVN mit Eclipse SVN mit NetBeans
Existierendes Projekt ins SVN laden: Struktur im SVN setzen
21 / 29
![Page 22: Versionsverwaltung mit SVN - coga.tu-berlin.de · Grundlagen SVN mit Eclipse SVN mit NetBeans Versionsverwaltung Typische Situation in der Softwareentwicklung Mehrere Personen arbeiten](https://reader031.vdocuments.pub/reader031/viewer/2022040312/5e02f48dd9e2ea2f204112e4/html5/thumbnails/22.jpg)
Grundlagen SVN mit Eclipse SVN mit NetBeans
Existierendes Projekt ins SVN laden: Kommentar ergänzen
22 / 29
![Page 23: Versionsverwaltung mit SVN - coga.tu-berlin.de · Grundlagen SVN mit Eclipse SVN mit NetBeans Versionsverwaltung Typische Situation in der Softwareentwicklung Mehrere Personen arbeiten](https://reader031.vdocuments.pub/reader031/viewer/2022040312/5e02f48dd9e2ea2f204112e4/html5/thumbnails/23.jpg)
Grundlagen SVN mit Eclipse SVN mit NetBeans
Existierendes Projekt ins SVN laden: nur *.java und Ordner
23 / 29
![Page 24: Versionsverwaltung mit SVN - coga.tu-berlin.de · Grundlagen SVN mit Eclipse SVN mit NetBeans Versionsverwaltung Typische Situation in der Softwareentwicklung Mehrere Personen arbeiten](https://reader031.vdocuments.pub/reader031/viewer/2022040312/5e02f48dd9e2ea2f204112e4/html5/thumbnails/24.jpg)
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
![Page 25: Versionsverwaltung mit SVN - coga.tu-berlin.de · Grundlagen SVN mit Eclipse SVN mit NetBeans Versionsverwaltung Typische Situation in der Softwareentwicklung Mehrere Personen arbeiten](https://reader031.vdocuments.pub/reader031/viewer/2022040312/5e02f48dd9e2ea2f204112e4/html5/thumbnails/25.jpg)
Grundlagen SVN mit Eclipse SVN mit NetBeans
Ein Repository Auschecken
25 / 29
![Page 26: Versionsverwaltung mit SVN - coga.tu-berlin.de · Grundlagen SVN mit Eclipse SVN mit NetBeans Versionsverwaltung Typische Situation in der Softwareentwicklung Mehrere Personen arbeiten](https://reader031.vdocuments.pub/reader031/viewer/2022040312/5e02f48dd9e2ea2f204112e4/html5/thumbnails/26.jpg)
Grundlagen SVN mit Eclipse SVN mit NetBeans
Pfad und Passwort angeben
26 / 29
![Page 27: Versionsverwaltung mit SVN - coga.tu-berlin.de · Grundlagen SVN mit Eclipse SVN mit NetBeans Versionsverwaltung Typische Situation in der Softwareentwicklung Mehrere Personen arbeiten](https://reader031.vdocuments.pub/reader031/viewer/2022040312/5e02f48dd9e2ea2f204112e4/html5/thumbnails/27.jpg)
Grundlagen SVN mit Eclipse SVN mit NetBeans
Lokalen Speicherort auswählen
27 / 29
![Page 28: Versionsverwaltung mit SVN - coga.tu-berlin.de · Grundlagen SVN mit Eclipse SVN mit NetBeans Versionsverwaltung Typische Situation in der Softwareentwicklung Mehrere Personen arbeiten](https://reader031.vdocuments.pub/reader031/viewer/2022040312/5e02f48dd9e2ea2f204112e4/html5/thumbnails/28.jpg)
Grundlagen SVN mit Eclipse SVN mit NetBeans
Ein Repository Auschecken
28 / 29
![Page 29: Versionsverwaltung mit SVN - coga.tu-berlin.de · Grundlagen SVN mit Eclipse SVN mit NetBeans Versionsverwaltung Typische Situation in der Softwareentwicklung Mehrere Personen arbeiten](https://reader031.vdocuments.pub/reader031/viewer/2022040312/5e02f48dd9e2ea2f204112e4/html5/thumbnails/29.jpg)
Grundlagen SVN mit Eclipse SVN mit NetBeans
Projekt erstellen
29 / 29