Subversion. Einstieg in die. Versionskontrolle



Ähnliche Dokumente
WinCVS Version 1.3. Voraussetzung. Frank Grimm Mario Rasser

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

Sourcecodeverwaltung

Software Engineering in der Praxis

Kurzanleitung zu. von Daniel Jettka

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

PROJEKTVERZEICHNIS EINRICHTEN

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

Wie benutzt man TortoiseSVN

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

Artikel Schnittstelle über CSV

FS cs108 Programmierpraktikum Subversion. Lukas Beck Cedric Geissmann Alexander Stiemer

Deployment Deployment Seite 1 / 25

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

MailUtilities: Remote Deployment - Einführung

SVN Windows Howto. Inhaltsverzeichnis. 1 Revisionsgeschichte

INDEX. Öffentliche Ordner erstellen Seite 2. Offline verfügbar einrichten Seite 3. Berechtigungen setzen Seite 7. Öffentliche Ordner Offline

Versionskontrolle mit Subversion

Einfu hrung in Subversion mit TortoiseSVN

Inhaltsverzeichnis. 1 Einleitung. Literatur. 1.1 CVS (Concurrent Version System) [Pru03, Zee02, Ced05]

Einrichtung des Cisco VPN Clients (IPSEC) in Windows7

Praktikum Ingenieurinformatik (PI)

CVS-Einführung. Sebastian Mancke,

Novell Client. Anleitung. zur Verfügung gestellt durch: ZID Dezentrale Systeme. Februar ZID Dezentrale Systeme

Versionsverwaltung mit Mercurial für Einsteiger

Über die Internetseite Hier werden unter Download/aktuelle Versionen die verschiedenen Module als zip-dateien bereitgestellt.

PC-Kaufmann Supportinformation - Proxy Konfiguration für Elster

COSIDNS 2 ISPconfig3. Version 0.1 ( )

OP-LOG

Tutorial -

Anleitung Captain Logfex 2013

Einführung Git Interna Workflows Referenzen. Git. Fast Version Control System. Michael Kuhn

Installation Messerli MySQL auf Linux

CMS.R. Bedienungsanleitung. Modul Cron. Copyright CMS.R Revision 1

Ordner Berechtigung vergeben Zugriffsrechte unter Windows einrichten

Einführung in Subversion

Update Messerli MySQL auf Linux

Eine Einführung in die Installation und Nutzung von cygwin

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

! " # $ " % & Nicki Wruck worldwidewruck

Mit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken.

Benutzerverwaltung Business- & Company-Paket

Das *z13-file Handling V1.0d

Anleitungen zum Publizieren Ihrer Homepage

HSR git und subversion HowTo

Um dies zu tun, öffnen Sie in den Systemeinstellungen das Kontrollfeld "Sharing". Auf dem Bildschirm sollte folgendes Fenster erscheinen:

Berechtigungen im Kalender Anleitung für die Rechtevergabe im Outlook Kalender FHNW, Services, ICT

Einführung in Subversion. Tutorium SWP

ecaros2 Installer procar informatik AG 1 Stand: FS 09/2012 Eschenweg Weiterstadt

Anbindung des Onyx Editors an das Lernmanagementsystem OLAT Anwendungsdokumentation

PHPNuke Quick & Dirty

AIO CREATOR NEO. Vorgehensweise beim Import von SteckerPRO Konfigurationen

Dreamweaver 8 Einführung

Lokaler KMS Server im Schulnetzwerk (Kurzanleitung)

Einführung in TexMaker

Windows 7 Firewall Regeln über die Registry

Agentur für Werbung & Internet. Schritt für Schritt: Newsletter mit WebEdition versenden

msm net ingenieurbüro meissner kompetent - kreativ - innovativ

SMS4OL Administrationshandbuch

Installationsanleitung unter Windows

Stellvertretenden Genehmiger verwalten. Tipps & Tricks

1. Einschränkung für Mac-User ohne Office Dokumente hochladen, teilen und bearbeiten

Benutzerverwaltung mit Zugriffsrechteverwaltung (optional)

FuxMedia Programm im Netzwerk einrichten am Beispiel von Windows 7

Netbeans 6.1 mit SVN Server unter Debian etch mit Windows Clients

FORUM HANDREICHUNG (STAND: AUGUST 2013)

Kurzeinführung Excel2App. Version 1.0.0

Anleitung. Datum: 28. Oktober 2013 Version: 1.2. Bildupload per FTP. FTP-Upload / Datei-Manager FTP. Glarotech GmbH

Kleines Handbuch zur Fotogalerie der Pixel AG

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

1. Zugriff des Autostarts als Dienst auf eine Freigabe im Netz

Stecken Sie Ihren USB Stick oder Ihre externe USB Festplatte in den USB Steckplatz des Sinus 154 DSL SE.

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

Musterlösung für Schulen in Baden-Württemberg. Windows Basiskurs Windows-Musterlösung. Version 3. Stand:

Handbuch ECDL 2003 Basic Modul 3: Textverarbeitung Dokument bearbeiten und speichern

Loggen Sie sich in Ihrem teamspace Team ein, wechseln Sie bitte zur Verwaltung und klicken Sie dort auf den Punkt Synchronisation.

Anleitung für den Zugriff auf Mitgliederdateien der AG-KiM

8. Dokumentenverwaltung mit CVS eine Einführung

Bedienungsanleitung. Stand: Copyright 2011 by GEVITAS GmbH

iphone app - Anwesenheit

Daten-Synchronisation zwischen Mozilla Thunderbird (Lightning) / Mozilla Sunbird und dem ZDV Webmailer

Family Safety (Kinderschutz) einrichten unter Windows 7

Verteilte Versionskontrolle mit GIT Dortmund Ansgar Brauner - GreenPocket GmbH - Köln

Kostenstellen verwalten. Tipps & Tricks

Seite 1 von 14. Cookie-Einstellungen verschiedener Browser

NTT DATA Helpdesk Benutzerhandbuch

FIS: Projektdaten auf den Internetseiten ausgeben

Bedienungsanleitung CAD-KAS Reklamationserfassung. Einen neuen Datensatz anlegen. Klicken Sie auf das + Symbol, um einen neuen Datensatz anzulegen.

Installationsanleitung VIO Copy 2.x

TeamViewer App für Outlook Dokumentation

Um über FTP Dateien auf Ihren Public Space Server - Zugang laden zu können benötigen Sie folgende Angaben:

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

DOKUMENTATION VOGELZUCHT 2015 PLUS

Transkript:

Versionskontrolle mit Subversion Einstieg in die Versionskontrolle Dipl.Ing.(FH) K. H. Marbaise

Agenda Wozu Versionskontrolle? Was leistet Versionskontrolle? Historie zu Subversion Projekt Handling Installation Best Practice Literatur 2

Wozu Versionskontrolle? Software/Dokumente ändern sich kontinuierlich Es ist nichts so stetig wie die Änderung 3

Wozu Versionskontrolle? Änderungen verursachen Chaos Versionskontrolle hilft, das Chaos zu vermeiden 4

Was leistet Versionskontrolle? Macht die Entwicklungsgeschichte rückverfolgbar Wer hat wann was gemacht? Alle alten Entwicklungsstände sind verfügbar; es gibt keine verlorenen Änderungen 5

Was leistet Versionskontrolle? Verhindert oder gleicht konkurrierende Änderungen ab Verfolgt Konfigurationen und Freigaben Wer hat was? 6

Historie von Subversion Start im Jahr 2000 August 2001 self hosting 23.Februar 2004 Release 1.0.0 1. Januar.2006 Release 1.3.0 7

Subversion Nachfolger von CVS. Wird (teilweise) von den Leuten entwickelt, die auch schon CVS (mit)entwickelt haben. 8

Es geht los! Einrichten eines Repositories Der Ort des Repositories ist beliebig. svnadmin create ReposName 9

Das erste Projekt I Übernahme eines Projektes in das Repository: svn import Verzeichnis file:///repos/projektname -m Änderungsnachricht 10

Das erste Projekt II Verzeichnis Das Verzeichnis, das importiert werden soll. Repos Absolutes Verzeichnis des Repositories 11

Das erste Projekt III ProjektName Names des Projektes im Repository 12

Das erste Projekt IV Adding Adding Adding Adding EinVerzeichnis EinVerzeichnis/help.html EinVerzeichnis/build.xml ChangeLog Committed revision 1. 13

Projekt bearbeiten Wenn jetzt mit einem Projekt gearbeitet werden soll, muss es zuerst ausgecheckt werden. 14

Auschecken I Arbeitskopie checkout Repository p rojekt d 1.txt d 2.c d 2.h 15

Auschecken II Projekt zur Bearbeitung in ein lokales Verzeichnis holen svn checkout file:///repos/projektname 16

Auschecken III A antsvk/einverzeichnis A antsvk/einverzeichnis/help.html A antsvk/einverzeichnis/build.xml A antsvk/changelog Checked out revision 1. 17

Auschecken IV Es wird im aktuellen Verzeichnis ein Verzeichnis mit dem Namen ProjektName angelegt. 18

Bearbeiten Jetzt können die Dateien / Verzeichnisse des Projektes bearbeitet werden. 19

Einchecken I Nach einer erfolgten Änderung müssen die Unterschiede in das Repository übertragen werden. Das wird einchecken oder auch commit genannt. 20

Einchecken II Repository Arbeitskopie commit p rojekt d 1.txt d 2.c d 2.h 21

Einchecken III Änderungen in das Repository übertragen svn commit 22

Einchecken IV 23

Einchecken V Ohne Änderung der default Einstellungen wird der Editor vi aufgerufen, um eine Änderungsmeldung einzugeben. Das kann bei Bedarf geändert werden. 24

Änderungsnachricht Der Sinn einer Änderungsnachricht (Commit-Message) ist es, die Änderung logisch zu beschreiben. Bitte nicht: Zeile 1 entfernt und Zeile 3 hinzugefügt o.ä. 25

Einchecken I Eingabe im Editor mithilfe von i beginnen. Nachricht abspeichern mit ESC gefolgt von ZZ oder :wq Weitere Befehle im vi Manual. 26

Einchecken II Die Änderungsnachricht kann auch mithilfe der Kommandozeilen Option -m angegeben werden svn commit -m - Nachricht 27

Einchecken III 28

Einchecken IV Sending ChangeLog Transmitting file data. Committed revision 2. kama@wanderer:~/testwc/antsvk> 29

Änderungen feststellen I Wie kann man feststellen, ob etwas geändert wurde? svn status 30

Änderungen feststellen II svn status? Test.txt A t1.java M ChangeLog 31

Änderungen feststellen III A Added (Hinzugefügt) M Modified (verändert) D Deleted (gelöscht) 32

Änderungen feststellen IV? Noch nicht unter Versionskontrolle. 33

Hinzufügen von Dateien I Hinzufügen von Dateien mithilfe von svn add File 34

Hinzufügen von Dateien II 35

Hinzufügen von Verzeichnissen I Hinzufügen von Verzeichnissen mithilfe von svn add Directory 36

Hinzufügen von Verzeichnissen II 37

Umbenennen von Dateien I Umbenennen von Dateien svn move Alt Neu 38

Umbenennen von Dateien II 39

Umbenennen von Verzeichnissen I 40

Umbenennen von Verzeichnissen II 41

Löschen von Dateien I Löschen von Dateien mithilfe von svn delete File 42

Löschen von Dateien II 43

Löschen von Verzeichnissen 44

Fehler gemacht! Und jetzt? Die meisten Änderungen, die in einer Arbeitskopie gemacht werden, können mithilfe von svn revert File rückgängig gemacht werden. 45

Korrekturen I 46

Korrekturen II 47

Korrekturen III 48

Änderungen feststellen 2 I Wie kann man feststellen, was geändert wurde? svn diff 49

Änderungen feststellen 2 II 50

Änderungen feststellen 2 III Alternativen zur Kommandozeile: SmartSVN RapidSVN SubCommander TkDiff 51

Änderungsnachrichten 2 I Wie kann man feststellen, welche Änderungsnachrichten eingegeben wurden? svn log 52

Änderungsnachrichten 2 II 53

Weitere Details? I Mithilfe von --verbose werden weitere Details ausgegeben. svn log --verbose 54

Weitere Details? II 55

Weitere Details? III 56

Revisions in Subversion 0 1 2 3 57

Installation Download des RPM's Download des Quellcodepaketes und Übersetzung per configure; make; make install unter dem Account root. 58

Zugriffsmöglichkeiten Client Dav SVN local Apache SVNServe Subversion Repository 59

svnserve Betrieb als Daemon inetd oder xinetd Einträge in /etc/services Aktivierung /etc/init.d Wird nicht sehr häufig verwendet. 60

Subversion und Apache I Betrieb von Subversion und dem Apache Web-Server ist nur mit der Release 2.0.X möglich. Betrieb auf allen Plattformen, auf denen der Apache Web-Server zur Verfügung steht. 61

Subversion und Apache II Laden der Server Module in der Apache Konfiguration: LoadModule dav_module LoadModule dav_svn_module modules/mod_dav.so modules/mod_dav_svn.so 62

Subversion und Apache III Konfiguration für den Repository Zugriff in der Apache Konfiguration: <Location /svn> DAV svn SVNPath /absolute/path/to/repository </Location> 63

Subversion und Apache IV Wichtig: Die Zugriffsrechte für das Repository müssen dem Benutzer und der Gruppe entsprechen, unter der der Apache Web-Server läuft. 64

Was ändert sich? Es wird lediglich aus file:///... http://server/svn/... Zugriff ist nun auch für andere möglich. Das ermöglicht eine Zusammenarbeit in einem Team. 65

Best Practice I Projekt Layout Eine Verzeichnisstruktur wird üblicherweise so angelegt, dass auch Tags und Branches angelegt werden können. 66

Best Practice II Projekt Layout ProjektName branches tags trunk 67

Best Practice III Einfachste Möglichkeit ist hier, die Struktur lokal im Dateisystem anzulegen und in neues Projekt zu importieren. Danach wird dann das eigentliche Projekt unter ProjektName/trunk importiert. 68

Online Quellen Homepage von Subversion http://subversion.tigris.org Handbuch Online http://svnbook.red-bean.com Andere Clients / Bibliotheken etc. http://subversion.tigris.org/links.html Client für Linux http://www.twobarleycorns.net/tkcvs.html 69

Online Quellen Verteiltes Versionsmanagement http://svk.elixus.org Subversion Forum http://www.svnforum.org Forum für Software Konfigurations Management http://www.openbc.com/net/skm 70

Literatur Programmieren unter Linux 2/2006 Einführung von Subversion in eine Arbeitsgruppe (www.proglinux.org/de) Software Developers Journal 3/2006 Umstieg von CVS auf Subversion (www.sdjournal.org) 71

Noch Fragen? Vielen Dank für Ihre Aufmerksamkeit. 72