Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

PowerBuilder und SVN Erste Schritte bei der Versionsverwaltung von Softwareprojekten mit Subversion (SVN) PBUGG 2009, A. Schmidt.

Ähnliche Präsentationen


Präsentation zum Thema: "PowerBuilder und SVN Erste Schritte bei der Versionsverwaltung von Softwareprojekten mit Subversion (SVN) PBUGG 2009, A. Schmidt."—  Präsentation transkript:

1 PowerBuilder und SVN Erste Schritte bei der Versionsverwaltung von Softwareprojekten mit Subversion (SVN) PBUGG 2009, A. Schmidt

2 PowerBuilder und SVN Agenda Einrichten eines einfachen SVN Servers
Projekt/Verzeichnisstrukturen vorbereiten Projekt in die Versionsverwaltung aufnehmen PowerBuilder SVN Integration Explorer SVN Integration Zusätzliche Tools Kleine Fallen und Herausforderungen PBUGG 2009, A. Schmidt

3 Versionsverwaltung - Wie
Wie kann man "Versionieren" Gar nicht Per Xcopy / Zip und anderem PowerBuilder Native Mit Hilfe eines Tools zur Versionsverwaltung: Microsoft Visual Source Safe, Concurrent Version System (CVS), Borland StarTeam, Perforce (SCM - Software Configuration Management), IBM Rational ClearCase ... Subversion (SVN) PowerBuilder Native verwaltet keine Versionen - Es kann Immer nur auf die letzte Version zurückgegriffen werden PBUGG 2009, A. Schmidt

4 Versionsverwaltung - Warum
'Control' für alle Beteiligten: Kontrolle über durchgeführte Änderungen Sicherheit, dass alles sauber 'archiviert' ist Sicherheit: Wer hat Was Wann (Wo) geändert. Bei mehr als einem Entwickler bereits sinnvolles Werkzeug zum gemeinsamen Synchronisieren Zentrale Datenhaltung Zentrale Datenhaltung = Einfache Sicherung PBUGG 2009, A. Schmidt

5 Subversion (SVN) Subversion (SVN) Existiert seit 2000
CollabNet, Inc., Brisbane, CA Open-Source-Software Versionsverwaltung für Dateien und Verzeichnisse Plattformen: Windows, Mac OS, Linux, Unix, Solaris u.a. Simplify, Collaborate, Innovate Tigris.org Open Source Software Engineering Tools PBUGG 2009, A. Schmidt

6 SVN - Client / Server Server Client
Verwaltet ein zentrales Archiv (Repository) Verfügt über ein einfaches Zugriffs-/ Benutzerkonzept Client Zugriff auf das Repository Verwaltet lokale Arbeitskopien Kommunikation über TCP/IP - Port 3690 (Standard) PBUGG 2009, A. Schmidt

7 SVN - Server Setup Download über (z.B. svn-win zip) Unzip in ein Verzeichnis, z.B unter c:\program\svn Erzeugen eines Repositories mittels: bin\svnadmin create c:\data\svn_repository Konfigurieren des Repositories Anpassen der Zugriffsrechte in der Datei conf\svnserve.conf Einrichten von Benutzern in der Datei conf\passwd Start des Servers per: bin\svnserve -d -r c:\data\svn_repository Einrichten als Windows Service: sc create svnserver binpath= "c:\program\svn\bin\svnserve.exe --service -r c:\data\svn_repository" displayname= "Subversion" depend= Tcpip start= auto Start/Stop: sc start svnserver / sc stop svnserver PBUGG 2009, A. Schmidt

8 SVN - Client Software SVN Client Tortoise SVN ['tȯr-təs]
Kommandozeile Tortoise SVN ['tȯr-təs] Windows Explorer Integration PushOK SVN Proxy Microsoft Source Code Control Interface (MSCCI) Implementierung Subclipse Eclipse Integration (Sybase Workspace) AnkhSVN Visual Studio Integration per SharpSvn PBUGG 2009, A. Schmidt

9 Tortoise SVN Explorer Integration Repository Browser Log Viewer
Checkout Update Add / Remove Commit Lock / Unlock uvm. Repository Browser Log Viewer Revision Graph Diff- / Merge-Tool Blame ;-) PBUGG 2009, A. Schmidt

10 SVN - Projekt vorbereiten
Erzeugen einer Projekt Struktur im Repository Projektname trunk tags branches Zwei Möglichkeiten 1. Remote per Tortoise Repo-Browser (sehr einfach) 2. Import einer "Template"-Verzeichnishierarchie per Tortoise (noch einfacher) Trunk = Rumpf / Rüssel / Baumstamm Tag = Anhänger / Etikett / Klebezettel Branch = Ableger / Abzweig / Ast PBUGG 2009, A. Schmidt

11 PowerBuilder - SVN Projectname Workspace.pbw main main.pbl target.pbt
Classes Classes.pbl Resources Pic1.gif App.ico Vorbereiten PowerBuilder Verzeichnisstruktur (Empfehlungen) Workspace-Datei (pbw) sollte im Root-Verzeichnis des Projekts stehen. Je PBL ein Unterverzeichnis Resource-Files und sonstige Verzeichnisse strukturieren. SVN Checkout Checkout des trunk gegen das Root-Verzeichnis per Tortoise. svn://localhost/pbtutor/trunk D:\asc\pb105\pbtutor PBUGG 2009, A. Schmidt

12 Tortoise - SVN Checkout
1. Root-Verzeichnis auswählen und "SVN Checkout ..." 2. Als SVN URL den 'trunk' des Projektes angeben 3. Yes! 4. Icon Overlays+.svn Verzeichnis PBUGG 2009, A. Schmidt

13 PowerBuilder - SVN SCC Proxy
SVN URL: svn://localhost/pbtutor SVN Module: trunk Achtung: Darstellung des 'trunk' als 'Project' Name. PBUGG 2009, A. Schmidt

14 PowerBuilder - SCC Menus
PowerBuilder Integration Add / Remove Check In Check Out Undo Check Out Diff Show History Refresh Status Plug-In Konfiguration SVN URL Konfiguration Workspace Properties PBUGG 2009, A. Schmidt

15 PB - Add to Source Control
Target und Objekte per "Add to Source Control" via PowerBuilder hinzufügen. Neue pbg-Datei ! PBUGG 2009, A. Schmidt

16 Tortoise - Add to Source Control
Andere Dateien und Verzeichnisse via Tortoise hinzufügen (Add + Commit). Keine PBLs , pbc , opt oder sonstige unbekannten Dateien versionieren! ! ! PBUGG 2009, A. Schmidt

17 PowerBuilder SCC vs. SVN
Tortoise SVN Beschreibung Add to Source Control Add + Commit Lokales Objekt dem Repository hinzufügen Remove from Source Control Delete + Commit Objektverweis aus Repository entfernen Check Out (Update) + (Get Lock) Objekt aus Repository in den lokalen Arbeitsbereich kopieren und ggf. Sperre setzen Undo Check Out (Update ) Revert + (Release Lock) Ursprüngliche Kopie aus dem Repository im lokalen Arbeitsbereich wiederherstellen Check In Commit Änderungen des lokalen Arbeitsbereiches in das Repository übernehmen Get Latest Version (Update) Lokalen Arbeitsbereich mit Änderungen aus dem Repository aktualisieren PBUGG 2009, A. Schmidt

18 Externe Diff / Merge - Tools
Einbinden externer Tools via PushOK SVN Proxy Properties Tortoise Settings Tools WinMerge (http://winmerge.org/) PB Delta (http://www.pbdr) PBUGG 2009, A. Schmidt

19 Aufsetzen eines Developer Seats
SVN Checkout per Tortoise SVN Bootstrapping Orcascript PowerGen (www.ecrane.com) PowerBatch (www.sqlbatch.com) Workspace + SCC Properties einrichten Auch eine Workspace-Datei (pbw) kann unter Source Control gelegt werden. oder die Frage "Woher kommen eigentlich die PBLs" PBUGG 2009, A. Schmidt

20 SVN - Herausforderungen I a
Verschieben von Objekten in PowerBuilder Verschieben aus abc.pbl in def.pbl Verschieben des Objekts per Drag 'n' Drop im Tortoise Repo-Browser (sofern PBLs in unterschiedlichen Verzeichnissen stehen). Editieren der abc.pbg und def.pbg und Commit der Änderungen. Anschließend GetLatest Version auf betroffene PBLs. Objekt ist nun in def.pbl und befindet sich auch noch in abc.pbl - ist dort jedoch nicht mehr unter Source Control. Objekt kann nun in abc.pbl gelöscht werden. PBUGG 2009, A. Schmidt

21 SVN - Herausforderungen I b
Editieren von PBG-Dateien Achtung! Zeile nicht einfach nur kopieren, sondern auf den Pfad und ggf. PBL Name achten! PBUGG 2009, A. Schmidt

22 SVN - Herausforderungen II
Wenn der Server offline ist ... PushOK SVN Proxy Properties lassen sich so einstellen, dass auch Offline Check Out Undo Check Out möglich sind. Wenn der Server wieder online ist... PushOK SVN Proxy Properties umstellen Check In PBUGG 2009, A. Schmidt

23 SVN - Unser tägliches Brot
Check Out und auch Undo Check Out ;-) Check In Ja ... aber wann? Get Latest Version und Update Ja... aber wann? Wann erfolgt ein 'Check In' bzw. 'Commit'? Size matters! Größe des Teams Komplexität der Software (Seiteneffekte) Anzahl möglicher Varianten Anzahl gleichzeitig zu betreuender Releases PBUGG 2009, A. Schmidt


Herunterladen ppt "PowerBuilder und SVN Erste Schritte bei der Versionsverwaltung von Softwareprojekten mit Subversion (SVN) PBUGG 2009, A. Schmidt."

Ähnliche Präsentationen


Google-Anzeigen