SVN in use. Roger Burkhardt Fachhochschule Nordwestschweiz Hochschule für Technik Institut für Geistes- und Naturwissenschaft

Ähnliche Dokumente
Versionskontrolle mit Subversion

Einfu hrung in Subversion mit TortoiseSVN

Fachpraktikum Graphische Benutzungsoberflächen Wintersemester 2010/2011

Contents. Subversion Einrichten. Vorbereitung Folgende Tools werden benötigt. Ladet diese herunter und befolgt die Installationsanweisungen.

Versionsverwaltung. Dr.-Ing. Matthias Sand. Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2009

Kurzanleitung zu. von Daniel Jettka

Informationen zur Installation und Nutzung von Subversion (SVN)

Software-Engineering Grundlagen des Software-Engineering 7.3 Sourcecode-Verwaltung mit Versionsmanagement-Systemen Einführung in Subversion (SVN)

Wie benutzt man TortoiseSVN

Einen Punkt in eigener Sache, Sie haben einen Fehler gefunden, etwas nicht verstanden, bitte schreiben Sie mir:

Klicken Sie, um das Format des Titeltextes zu bearbeiten

Subversion und Tortoise SVN Tutorial. Quelle: mit freundlicher Genehmigung von sd&m Research

Software(technik)praktikum: SVN-Tutorial

Versionskontrolle mit Subversion

Versionskontrolle mit Subversion. Carnot 6.0

Fachpraktikum Graphische Benutzungsoberflächen Wintersemester 2007/08

SVN Windows Howto. Inhaltsverzeichnis. 1 Revisionsgeschichte

Subversion als Werkzeug in der Software-Entwicklung Eine Einführung. Tobias G. Pfeiffer Freie Universität Berlin

SVN-Einführung für das SEP DS und CM. Julian Timpner, Stefan Brenner, Stephan Rottmann

Informationen zur Installation und Nutzung von Subversion (SVN)

CVS. The open standard for version control. (Concurrent Versions System) Maik Zemann CVS

Thomas Rau (mit Material von Peter Brichzin) Repositories zur Unterstützung von kollaborativen Arbeiten in Softwareprojekten

Einführung in Subversion

Software Engineering in der Praxis

PROJEKTVERZEICHNIS EINRICHTEN

8. Dokumentenverwaltung mit CVS eine Einführung

Einführung in Subversion

Versionsverwaltung GIT & SVN. Alexander aus der Fünten. Proseminar: Methoden und Werkzeuge, SS Lehrstuhl i9, Prof. Dr. T.

Einführung in Subversion

CVS-Einführung. Sebastian Mancke,

Tool-Chain. Übung. Eclipse, SVN, Ant, Cobertura, Metrics Labor "Software Engineering Experiment" Sebastian Meyer und Kai Stapel

FS cs108 Programmierpraktikum Subversion. Lukas Beck Cedric Geissmann Alexander Stiemer

Einführung in Subversion. Tutorium SWP

Kurzanleitung für den MyDrive Client

Subversion. Einstieg in die. Versionskontrolle

Softwaretechnik (Allgemeine Informatik) Überblick

Versionsmanagement. Fachgebiet Softwaretechnik, Heinz Nixdorf Institut, Universität Paderborn

WinCVS Version 1.3. Voraussetzung. Frank Grimm Mario Rasser

Die Projek*ools. Files, Git, Tickets & Time

NT-Seminarvortrag am 11. Dezember Einführung in die Versionsverwaltung CVS. von Gordon Cichon

Software-Engineering Grundlagen des Software-Engineering

Subversion. 17. Oktober Subversion. Norbert Perk. Warum Versionsverwaltung? Wie funktioniert. Was ist Subversion? Subversion- Server.

Vorlesung Programmieren. Versionskontrollsysteme. Ziele von VCS. Versionskontrolle

3. Versions- und Konfigurationsmanagement. Typischer Weg der Software-Entwicklung

TortoiseSVN unter Windows

Versionsverwaltung mit CVS bzw. Subversion

Versionsverwaltung von Softwareartefakten. Dr. Thorsten Arendt Marburg, 05. November 2015

git & git-flow Jens Sandmann Warpzone Münster e.v. Jens Sandmann (WZ) git & git-flow / 31

Anhang SOFTWAREVERSIONSVERWALTUNG MIT SUBVERSION

Versionsverwaltung von Softwareartefakten. 21. Oktober 2014

Linux im Studium. Serbest Hammade / Resh, Christian Sturm. Do, 15. November 2012

Subversion und Trac. Michael Trunner. 23. Januar Fachschaft Informatik und Softwaretechnik Universität Stuttgart

Installation von Git für unsere OpenDCC/Fichtelbahn Entwickler Stephan Bauer, Christoph Schörner, Andreas Kuhtz

git Änderungen verwalten mit git

Versionsverwaltung mit SVN

Software Engineering in der Praxis

JUnit (Version 4.x) Framework zur Unterstützung von Unit-Tests. Wir verwenden nicht JUnit 3.x. Ideen dahinter. Test-Methode

Versionskontrolle mit Subversion

Crashkurs Subversion / Trac / Provisioning. Jan Zieschang, , Berlin

Kurzanleitung Eclipse

Buildmanagement mit HUDSON. Version: Date: Author: Werner Dichler

Subversion Grundprinzipien und grundlegende Anwendung

BlueJ und Subversion Inhaltsverzeichnis

Verändern Die Arbeitskopie kann vom Benutzer beliebig modifiziert werden.

Versionsverwaltung mit Subversion

Dokumenten Management (DMS)

Versionsverwaltung mit SVN

Proseminar Unix-Tools CVS Daniel Weber & Zhen Zhang Betreuer: Volker Baier

Einführung in Subversion

Entwicklungs- Qualitätssicherung- & Live-Server

Versionsverwaltung. Seminar Softwareentwicklung in der Wissenschaft Robert Wiesner

Software Configuration Management (SCM)

Datenbanken und Netzanbindung

3. Versions- und Konfigurationsmanagement

Einführung in Subversion

Praktische Softwaretechnologie Vorlesung 6

CVS - Begriffe. Einführung in CVS

SVN-Tutorial für WEBMM7

BSCW-Benutzung Kurze Einführung

Versionsverwaltung von Softwareartefakten. Dr. Thorsten Arendt Marburg, 06. November 2014

: Einführung in die Programmierung I Übungsblatt 1

Dokumente verwalten mit Magnolia das Document Management System (DMS)

UserClient - Grundlagen

Mercurial. or how I learned to stop worrying and love the merge. Ted Naleid IAIK

Versionsmanagement mit Subversion

Versionsverwaltungssysteme

Enigma2 Plugin Entwicklung mit Eclipse

UserClient - Grundlagen

HSR Subversion HowTo. Konfigurationsmanagement HSR MAS SE, September 2009 Seite 1 von 13

Software Configuration Management (SCM)

Apache Subversion (SVN)

Einführung in Verteilte Versionskontrollsysteme. am Beispiel von Git

Moodle aktuell halten mit Git

Versionsmanagement mit Subversion

Quellcodeverwaltung mit SubVersion

Prinzipielles zur Benutzung von Versionskontrollsystemen

Live Update (Auto Update)

Anleitung für den Zugriff auf die lizenzierten Datenbanken und E-Books außerhalb der Staatlichen Studienakademie Bautzen

3 ORDNER UND DATEIEN. 3.1 Ordner Ordner anlegen

Arbeiten mit dem Versionsverwaltungssystem. Jannik Kramer Proseminar Werkzeuge für das wissenschaftliche Arbeiten

Transkript:

SVN in use Roger Burkhardt roger.burkhardt@fhnw.ch Fachhochschule Nordwestschweiz Hochschule für Technik Institut für Geistes- und Naturwissenschaft FS 2009 Roger Burkhardt roger.burkhardt@fhnw.ch SVN in use 1/20

Was ist SVN Subversion (kurz SVN) ist ein modernes Versionsverwaltungssystem, welches Dokumente zentral auf einem Server speichert und diese Gruppen von Nutzern zum Bearbeiten weltweit zur Verfügung stellt. Das Arbeiten mit einem solchen Versionsverwaltungssystem ist Heute beim Entwickeln grösserer Softwareprojekte die Regel. Dieses Dokument beschreibt die Verwendung von Subversion mit dem Subversion-Client TortoiseSVN. Dieses Dokument beschreibt nicht das Aufsetzen eines Subversion-Servers. Hierzu sei auf das folgende, sehr gute Buch verwiesen: Literatur Version Control with Subversion. B. Collins-Sussman, B. Fitzpatrick, M. Pilato. http://svnbook.red-bean.com. Roger Burkhardt roger.burkhardt@fhnw.ch SVN in use 2/20

Arbeiten mit SVN Unter Wimdows arbeitet man mit SVN meistens mit TortoiseSVN, dem klar besten Subversion-Client. TortoiseSVN (aktuell Version 1.5.8) ist OpenSource Software und kann von folgenden Quellen bezogen werden: TortoiseSVN http://tortoisesvn.net/ http://tortoisesvn.tigris.org/ Im Rahmen der Projekte im Studiengang Informatik an der FHNW steht ein Subversion-Server zur Verfügung. Die Zugänge sind die folgenden: Subversion-Server der FHNW - Studiengang I https://studsvn.imvs.technik.fhnw.ch/<repository-pfad> Roger Burkhardt roger.burkhardt@fhnw.ch SVN in use 3/20

Information für Studierende Wenn sie für ein Projekt ein Subversion-Repository benötigen, so teilen Sie dies Ihrem Dozenten oder Betreuer mit. Jedes Projekt beinhaltet automatisch ein Subversion-Repository und eine Trac-Instanz, sie müssen diese also nicht separat beantragen. Wenn Sie Ihr Repository beantragen, so sind folgende Informationen wichtig: Name des Projekts sowie ein Kürzel, welches später in der URL erscheint (z.b. myproject) Mailadressen aller Dozenten bzw. Betreuer, die Zugang haben müssen FHNW-Mailadressen aller Studierenden, die Zugang haben müssen Falls Sie Trac verwenden wollen, die Namen der Studierenden, welche Administrationszugriff auf dem Trac haben sollen Roger Burkhardt roger.burkhardt@fhnw.ch SVN in use 4/20

Projektarchiv (Repository) auschecken Subversion speichert alle unter der Versionsverwaltung stehenden Dateien und Verzeichnisse im Projektarchiv (Repository). Die Archive für die Informatik-Projekte wurden angelegt und die entsprechenden Zugangsdaten sollten sie erhalten haben. Um nun mit dem Projektarchiv zu arbeiten, muss eine Arbeitskopie vom Server heruntergeladen werden. Legen sie dazu einen entsprechenden Ordner an, in den sie die Arbeitskopie speichern wollen. In diesem Ordner (im Windows-Explorer) kann nun mit der rechten Maustaste ein Kontextmenu geöffnet werden. In diesem Kontextmenu findet man den Befehl SVN Checkout... Nach dem Anwählen dieser Aktion erscheit ein Fenster, in dem die URL des Projektarchivs angegeben wird: Roger Burkhardt roger.burkhardt@fhnw.ch SVN in use 5/20

Projektarchiv (Repository) auschecken Im angelegten Ordner wird ein neuer Ordner erstellt, in dem alle Dokumente (und Verzeichnisse) des Projektarchivs beinhaltet sind. Roger Burkhardt roger.burkhardt@fhnw.ch SVN in use 6/20

Objekte ins Projektarchiv hinzufügen Am Anfang ist das Projektarchiv leer und es müssen Dateien und Verzeichnisse erstellt und hinzugefügt werden. Nachdem in der ausgecheckten Arbeitskopie ein Verzeichnis oder eine Datei erstellt wurde, kann dieses Objekt in zwei Schritten ins Projektarchiv geladen werden. Roger Burkhardt roger.burkhardt@fhnw.ch SVN in use 7/20

Objekte ins Projektarchiv hinzufügen Zuerst teilt man dem Projektarchiv mit dem Add...-Befehl mit, dass neue Objekte zum Projektarchiv gehören. Dazu drückt man wieder die rechte Maustaste auf dem Projektordner und wählt im Kontextmenu den Punkt Add...: Roger Burkhardt roger.burkhardt@fhnw.ch SVN in use 8/20

Objekte ins Projektarchiv hinzufügen Nach dem hinzufügen der Objekte mit Add müssen die Änderungen nun noch auf den Server übertragen werden. Dies geschieht mit dem Befehl Commit...: Roger Burkhardt roger.burkhardt@fhnw.ch SVN in use 9/20

Bemerkungen Durch das Einchecken (Commit) erhalten die Objekte eine (neue) Revisionsnummer. Dabei erhalten alle Dokumente die gleiche Revisionsnummer. Diese Revisionsnummer bezeichnet den Stand des ganzen Projektes. Die einzelnen Objekte erhalten unabhängig von Subversion eine unabhängige Versionsnummer! Beim einchecken soll immer ein kurzer Text für das Logfile eingetragen werden. Dieses Logfile ermöglicht die Suche nach bestimmten Revisionen und dokumentiert auch gleich den Verlauf der Projektverlaufs. Programmcode soll immer nur in lauffähigen Versionen eingecheckt werden (wer möchte schon einen Quellcode mit Fehlern herunterladen und zuerst Fehler ausmerzen müssen!!!). Roger Burkhardt roger.burkhardt@fhnw.ch SVN in use 10/20

Update und Commit Der normale Arbeitsablauf an bestehenden Dateien besteht aus dem folgenden Zyklus: Update Bearbeitung der Datei Commit. Dazu wird vor dem Arbeiten die neuste Revision heruntergeladen: Roger Burkhardt roger.burkhardt@fhnw.ch SVN in use 11/20

Update und Commit Die bearbeitete Datei wird dann mit Commit wieder eingecheckt: Roger Burkhardt roger.burkhardt@fhnw.ch SVN in use 12/20

Konflikte Der gerade beschriebene Zyklus funktioniert nicht, wenn mehrere Nutzer gleichzeitig eine Datei bearbeiten. Denken wir uns die beiden Nutzer bur und rog, welche die gleiche Datei (in der gleichen Revision) ausgecheckt haben. Seien die folgenden Änderungen an der Datei vorgenommen worden: Roger Burkhardt roger.burkhardt@fhnw.ch SVN in use 13/20

Update und Commit Nehmen wir nun an, das der Nutzer rog die bearbeitete Datei zuerst eincheckt (commit). Dabei entstehen keine Probleme. Zu einem späteren Zeitpunkt versucht nun der Nutzer bur seine geänderte Datei hochzuladen, so bekommt er einen Fehler: Roger Burkhardt roger.burkhardt@fhnw.ch SVN in use 14/20

Konflikte auflösen Um den Konflikt aufzulösen muss der Nutzer bur nun zuerst ein update durchführen. Dazu werden im entsprechenden Ordner die verschiedenen zueinander in Konflikt stehenden Dateien abgelegt: Roger Burkhardt roger.burkhardt@fhnw.ch SVN in use 15/20

Konflikte auflösen Mit der Auswahl des Menupunkts TortoiseSVN Edit Conflicts wird ein neues Fenster mit den beiden Dateivarianten geöffnet. Hier können die beiden Dateien zusammengeführt werden: Danach kann der Konflikt als gelöst gekennzeichnet werden und die bearbeitete Datei wieder eingecheckt werden! Roger Burkhardt roger.burkhardt@fhnw.ch SVN in use 16/20

Weitere Funktionen Löschen und Umbennenen von Objekten: Im Kontextmenu stehen die Punkte Delete und Rename für das Löschen und Umbennenen von Dateien zur Verfügung. ACHTUNG: Nie Objekte in einer Arbeitskopie direkt Löschen oder Umbennenen. Dies kann zu schweren, nicht auflösbaren Konflikten führen! Revisionsgraph und Revisionslog: Zu jedem Objekt kann eine grafische Darstellung der Revisionen der Datei erzeugt werden (Revisiongraph). In dieser grafischen Darstellung findet man auch alle Log-Einträge. Mit dem Befehl Blame kann zu einer Textdatei die ganze Geschichte der Entwicklung angezeigt werden (wer hat welche Änderungen vorgenommen!). Roger Burkhardt roger.burkhardt@fhnw.ch SVN in use 17/20

Weitere Funktionen Branches/Tags: Wenn von einem Softwareprojekt eine Version ausgeliefert werden soll, so sollte der Projektstand eingefroren werden. Mit dem Befehl Branch/Tag kann eine neue Arbeitskopie erstellt werden. Dabei wird auf dem Server eine Kopie angelegt, an welcher weiter gearbeitet werden kann. Merge: Werden an verschiedenen Kopien gearbeitet (entwickelt), hat man mit dem Befehl Merge die Möglichkeit zwei Zweige wieder zusammenzuführen (verlangt noch eineges an Handarbeit!). Roger Burkhardt roger.burkhardt@fhnw.ch SVN in use 18/20

Trac In Zusammenhang mit dem von uns verwendeten Subversion-Server steht mit dem Programm Trac auch ein Ticketsystem zur Verfügung. Zugang auf das Programm hat man über einen beliebigen Browser: Trac-Zugang https://studtrac.imvs.technik.fhnw.ch/<repository-pfad> Mit dem Trac-Programm kann die Arbeit in kleine Arbeitspakete verpackt werden. Diese Arbeitspakete können einem Nutzer zugeordnet werden (Ticket). Im weiteren können diese Arbeitspakete in einen Zeitplan eingebunden werden (Meilensteine). Abgearbeitete Pakete werden quittiert. Bei allen Aktionen im Trac werden die beteiligten Nutzer per Mail benachrichtigt. Roger Burkhardt roger.burkhardt@fhnw.ch SVN in use 19/20

Trac Über den Browser bietet Trac die Möglichkeit die Inhalte des Projektverzeichnis zu betrachten bzw. zu durchsuchen: Roger Burkhardt roger.burkhardt@fhnw.ch SVN in use 20/20