Subversion. Quellcodeverwaltung a la Opensource. Matthias Fischer. Technical Expert.NET Tieto, JOSI / Microsoft Matthias.Fischer@tieto.



Ähnliche Dokumente
Versionsmanagement mit Subversion

Versionsverwaltung für r Visual Studio.NET mit Subversion

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

Netbeans 6.1 mit SVN Server unter Debian etch mit Windows Clients

Software Engineering in der Praxis

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

Subversion - Versionsverwaltungssystem

Auf einen Blick. Vorwort Einleitung Das Versionsmanagementsystem Subversion Der Entwicklungsprozess mit Subversion 37

Frank Budszuhn. Subversion ~ --.. Galileo Press

Selbstverwaltung von Subversion Repositories

Versionskontrolle mit Subversion

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

... Vorwort Vorwort zur 2. Auflage Vorwort zur 3. Auflage Der Autor... 17

OP-LOG

Praktikum Ingenieurinformatik (PI)

Automatisierte Einbindung von Windows Systemen in Bacula mit Hilfe von OPSI

Torsten Flatter inovex GmbH. "Git.NET" gibt's nicht?

Git - Fast Version Control System

Versionsverwaltung für die KU Betriebssysteme. Eine Einführung

Software Engineering in der Praxis

binäre Dateien 223 BitKeeper 29 blame 151, 239 Branch 22, 326 branches 80, 120

Kurzanleitung zu. von Daniel Jettka

KEIL software. Inhaltsverzeichnis UPDATE. 1. Wichtige Informationen 1.1. Welche Änderungen gibt es?

SFTP SCP - Synology Wiki

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

Installation Messerli MySQL auf Linux

Lexware professional und premium setzen bis einschließlich Version 2012 den Sybase SQL-Datenbankserver

Betriebssystem Windows - SSH Secure Shell Client

Subversion. Einstieg in die. Versionskontrolle

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

FS cs108 Programmierpraktikum Subversion. Lukas Beck Cedric Geissmann Alexander Stiemer

Von SVN zu Git. Daniel Willmann cbna

INSTALLATIONSANLEITUNG der Version 2.1 (Jänner 2014)

IntelliRestore Seedload und Notfallwiederherstellung

Sourcecodeverwaltung

Folgende Voraussetzungen für die Konfiguration müssen erfüllt sein:

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

CVS, Subversion und Darcs CVS, Subversion und Darcs

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

Versionskontrollsysteme. Uwe Berger & Markus Dahms <bralug@bralug.de>

Grundlegende Informationen zur Einrichtung des SSLVPN beim DSR-500N/1000N (FW 1.04Bxx).

Fernwartung von Mac OS 9 u. X per VNC

Apache Subversion (SVN)

Update Messerli MySQL auf Linux

Warum beschäftigt sich ein Linux-Systemhaus mit der Installation von OTRS mit einem Microsoft SQL Server?

Installation des GeoShop Redirector für Apache (Stand ) ================================================================

Quickstep Server Update

Linux Cafe Referent: Bernd Strößenreuther

B4 Viper Connector Service Installationsanleitung Stand:

Konfiguration Zentyal 3.3 Inhaltsverzeichnis

Framework zur Unterstützung von Unit-Tests

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

TimeMachine. Time CGI. Version 1.5. Stand Dokument: time.odt. Berger EDV Service Tulbeckstr München

Versionskontrolle mit Subversion

Folgende Einstellungen sind notwendig, damit die Kommunikation zwischen Server und Client funktioniert:

Medieninformatik Praktikum. Jens Rademacher

Installation - Optimierung und Fehleranalyse

MOUNT10 StoragePlatform Console

TService für Zeiterfassung und Zutrittskontrolle

Upgrade auf die Standalone Editionen von Acronis Backup & Recovery 10. Technische Informationen (White Paper)

Datensicherung und Wiederherstellung

Grundlegende Informationen zur Einrichtung des SSLVPN beim DSR-1000N/DSR-500N(FW 1.03B27).

Multisite Setup. mit Nutzung von Subversion. Drupal Voice Chat

Einführung in Git. Dirk Deimeke. 19. August My own IT. ddeimeke (My own IT) Einführung in Git 19. August / 23

Anleitungsbeschreibung

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

Konfigurationsbeispiel USG

Wiederherstellen der Beispieldatenbanken zum Buch Microsoft Project 2010

Windows 8/8.1 RecImg-Manager

datenfabrik.phone Telefonnummern mit den SQL Server Integration Services validieren

Installationsanleitung MS SQL Server für Sage 50 Ablage & Auftragsbearbeitung. Sage Schweiz AG D4 Platz 10 CH-6039 Root Längenbold

Thomas Wagner 2009 (im Rahmen der TA) Installation von MySQL 5.0 und Tomcat 5.5

Macrium Reflect Freeware-Tutorial:

Versionskontrolle mit Subversion

Seite Out-Of-Band-Authentifizierung (OOBA) 8.1 Einleitung

Verteilte Versionskontrolle mit. Einführung und Nutzung von SVK FrOSCon 24./25. Juni 2006

Whitepaper. Produkt: combit Relationship Manager. SQL Server 2008 R2 Express um Volltextsuche erweitern. combit GmbH Untere Laube Konstanz

MSDE 2000 mit Service Pack 3a

Software Engineering I

Information über das Virtual Private Networks (VPNs)

Administration von großen Ubuntu Linux Desktop Umgebungen mit Univention Corporate Client

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

Folgende Voraussetzungen für die Konfiguration müssen erfüllt sein:

Windows Integration. von Tino Truppel

Versionsmanagement mit Subversion

Anleitung Redmine. Inhalt. Seite 1 von 11. Anleitung Redmine

Anleitung: Webspace-Einrichtung

Tools are a IT-Pro's Best Friend Diverse Tools, die Ihnen helfen zu verstehen, was auf dem System passiert oder das Leben sonst erleichtern.

Lehrveranstaltung Grundlagen von Datenbanken

MapProxy. Eine praktische Einführung FOSSGIS Heidelberg. Dominik Helle Oliver Tonnhofer

Virtual Channel installieren

2 Die Terminaldienste Prüfungsanforderungen von Microsoft: Lernziele:

WORKSHOP VEEAM ENDPOINT BACKUP FREE

Microsoft Dynamics NAV 2013 R/2 Installationsanleitung. Inhalt: Begleitmaterial des ERP Übungsbuchs:

Installationsanleitung für DoRIS unter Linux Inhaltsverzeichnis

Konfigurationsdateien mit Git verwalten

Git in großen Projekten

Firewall Implementierung unter Mac OS X

Hex Datei mit Atmel Studio 6 erstellen

INSTALLATION DES V-MODELL XT UNTER WINDOWS VISTA

Transkript:

Subversion Quellcodeverwaltung a la Opensource Matthias Fischer Technical Expert.NET Tieto, JOSI / Microsoft Matthias.Fischer@tieto.com

Agenda Grundlagen Installation Administration / Konfiguration Verwendung Struktur für Projekte Lokal / Remote Advanced Keywords Hooks Backup Branches,Tags und Merging 2

Übersicht Clients Kommandozeile (svn.exe, svnadmin.exe, SilkSvn ) Windows GUI (tortoisesvn, rapidsvn, ) Andere (AnkhSvn, VisualSvn ($), ) Server Standalone Leichtgewicht, mit verbindungsorientiertem Protokoll, TCP/IP tunnel mode (z.b. SSH) Kommunizieren durch svn:// oder svn+ssh:// Schemata Apache modul WebDAV-basiert Skalierbar Sicherer 3

Erstellen eines Reposetories Kommandozeile svnadmin create <[path/]reporetoryname> TortoiseSVN 4

Aufbau Reposetory conf Enthält die Konfigurationsdateien. dav Enthält ggf. Dateien welche vom apache-dav Modul benötigt werden. db Enthält die Berkeley DB oder das Subversion eigenen Filesystem (welches die versionierten Verzeichnisse und Dateien enthält). format Enthält einfache Integer-Werte welche die Version des Reposetories wieder geben. hooks Enthält Skripte für diverse Aktionen. locks wird für Semapohren verwendet 5

Basis-Konfiguration svnserve.conf passwd authz [general] anon-access = read auth-access = write password-db = passwd authz-db = authz realm = Test Reposetory.NET UGBerlin [users] fischmat = gegeim schwewer = xxx [/foo/bar] fischmat = rw schwewer = r * = 6

Basis-Konfiguration authz aliases] joe = /C=XZ/ST=Dessert/L=Snake City/O=Snake Oil, Ltd./OU=Research Institute/CN=Joe Average [groups] harry_and_sally = harry,sally harry_sally_and_joe = harry,sally,&joe 7

Demo Anlegen eines Reposetories Mit Kommandozeile Mit TortoiseSVN Konfiguration der Benutzer 8

Struktur Root Project Structure Root Structure Project branches br_4711 calc trunk calc tags trunk / paint branches / branches br_calc_4711 paint trunk tags tags 9

Anlegen der Basis Struktur 10

Demo Struktur aufbauen TortoiseSVN (Reposetory-Browser) Kommandozeile set svnroot = "cd c:\work\_subversion" cd %svnroot% svnadmin create ugberlin cd c:\work svn co file:///%svnroot%/ugberlin cd ugberlin md paint calc cd paint md trunk tags branches cd..\calc md trunk tags branches cd.. svn add * svn ci m "init" 11

Verwendung + Administration Direkter Zugriff auf das Reposetory file:///path/to/reposetory svnserve TCP basierter Server svnserve d r <path/to/repos> --listen-host <host oder IP> Automatscher Start als Windows-Dienst sc create svnserve binpath="\"c:\program Files\SilkSvn\bin\svnserve.exe\" --service --root c:\work\_subversion" displayname="subversion" depend=tcpip start=auto 12

Sichern & Wiederherstellen #Backups svnadmin dump ugberlin > ugberlin.dumpfile svnadmin dump ugberlin -r 23 > rev-23.dumpfile svnadmin dump ugberlin -r 100:200 > revs-100-200.dumpfile #Restore svnadmin load newrepos < ugberlin.dumpfile #Merge svnadmin create newrepos svn mkdir -m "Initial project roots" \ file:///./calc \ file:///./paint svnadmin load newrepos --parent-dir calc < calc.dumpfile svnadmin load newrepos --parent-dir paint < paint.dumpfile #Splitt svndumpfilter include calc < repos.dumpfile > calc.dumpfile svndumpfilter include paint < repos.dumpfile > paint.dumpfile 13

3rd Party Tools AnkhSVN freies Plugin für Visual Studio 2005/2008/2010 Solution hinzufügen Solution öffnen 14

Demo Neues Projekt einfügen Projekt aus Subversion öffnen 15

Schlüsselwörter Durch setzen der Eigenschaft svn:keywords können diverse Schlüsselwörter ersetzt werden $Date$ $Revision$ ($Rev$) $Author$ $HeadURL$ $Id$ $LastChangesDate$ Beispiel: svn propset svn:keywords "Date Author" calc.cs 16

Auto-Properties 17

Hooks start-commit pre-commit post-commit pre-revprop-change post-revprop-change pre-lock post-lock pre-unlock post-unlock 18

Beispiel Beispiel Programm in C# für Start_Commit Hinweise: unter Windows müssen die Skripte eine ausführbare Endung haben (exe, bat, cmd.) Unter Linux ist keine Endung erforderlich Hook-Skripte werden sowohl vom svnserve als auch von den Clients, welche direkt auf das Reposetory zugreifen beachtet class Program { static int Main(string[] args) { var user = (args.length > 1)? args[1] : ""; if (user == "mfi") { return 0; } else { Console.Error.WriteLine("Nur der Benutzer MFI darf synchronisieren!"); return 1; } } } 19

Branching / Tagging svn copy trunk branches/my-calc-branch svn ci -m "Creating a private branch of /calc/trunk." 20

Merging svn diff -c 344 svn://repos/calc/trunk my-calc-branch svn merge -c 344 svn://repos/calc/trunk my-calc-branch svn merge svn://repos/branch1@150 svn://repos/branch2@212 my-working-copy 21

Demo Erzeugen eines Tags Erzeugen eines Branches Merge des Branches zurück auf die Hauptline 22

Thank you Subversion, Quellcodeverwaltung a la Open Source Matthias Fischer Technical Expert.NET Tieto, JOSI / Microsoft Matthias.Fischer@tieto.com