Concurrent Versions System

Größe: px
Ab Seite anzeigen:

Download "Concurrent Versions System"

Transkript

1 Concurrent Versions System Ausarbeitung zum Vortrag im Rahmen des Proseminars Unix Tools Technische Universitaet Muenchen WS2005/2006 Siarhei Trushyn 14. Dezember

2 INHALTSVERZEICHNIS 2 Inhaltsverzeichnis 1 Einleitung Geschichte Einsatzmöglichkeiten Archiv Benutzung Aufbau Anlegen eines Archivs Zugriff Projekt mit CVS Anlegen eines neuen CVS Projekts Auschecken einer Arbeitskopie Änderungen anschauen Änderungen speichern Mehrere Benutzer Überblick behalten Änderungen zurücknehmen Aufräumen Nützliche Kommandos Momentaufnahmen - Tags Praktische Anwendung von Tags Sticky Tags Zusammenfassung CVS Befehlszyklus Nachteile von CVS Quellen

3 1 EINLEITUNG 3 1 Einleitung Concurrent Versions System (CVS) bezeichnet ein Kommandozeilenprogramm zur Versionsverwaltung von Dateien und insbesondere von Programmquelldateien. 1.1 Geschichte CVS ist eine Weiterentwicklung von RCS, das ebenfalls eine Versionsverwaltung ermöglichte, diese jedoch nur auf einzelne Dateien beschränkte. Hauptsächlich diese Schwäche sollte mit der Entwicklung von CVS behoben werden. Erste Entwicklungen an Concurrent Versions System wurden im Jahre 1986 von Dick Brune durchgeführt, als er seine erste Ideen und Konzepte in vielen Shell- Skripten niedergeschrieben hatte, die jedoch nicht als endgültige Implementierung, sondern als Entwürfe anzusehen waren. Die endgültige Entwicklung von CVS ist 1989 von Brian Berliner und Jeff Polk gemacht worden, die die wesentlichen Konzepte und Ideen aus den Shell-Skripten von Dick Brune übernommen haben. Heute erfreut sich CVS grosser Beliebtheit in der Open Source Welt und wird beispielsweise von solchen grossen Projekten wie Apache, Firefox und Samba benutzt. Aber auch kommerzielle Configuration-Management-Werkzeuge benutzen die Funktionalität von CVS für ihre Zwecke. Heutzutage wird CVS nach und nach durch eine Weiterentwicklung wie SVN ersetzt, bei der die meisten Schwächen von CVS behoben worden sind. 1.2 Einsatzmöglichkeiten An dieser Stelle gilt es nun zu klären, was genau CVS einem Entwickler an Einsatzmöglichkeiten bietet: Versionskontrollverwaltung Dies ist die Hauptfunktionalität von CVS, welche einem Entwickler erlaubt alle Versionen eines Softwareprojekts zu verwalten, einzusehen und bei Bedarf die früheren wiederherzustellen. Somit eröffnet sich die Möglichkeit einen Überblick über die Geschichte des Projekts zu behalten. Gemeinsame Entwicklung von vielen Personen CVS erlaubt es einer ganzen Projektgruppe gleichzeitig an einem Projekt zu entwickeln und sich dabei nicht gegenseitig zu behindern. Es existieren in CVS entsprechende Mechanismen, die Konflikte zwischen den Entwicklern aufzeigen oder selbstständig beheben. Speicherplatzersparnis In einem CVS Versionsverwaltungssystem werden nicht alle Versionen eines Projekts einzeln für sich gespeichert. Vielmehr werden an einer zentralen Stelle nur die inhaltlichen Äenderungen protokolliert und gespeichert. Diese Vorgehensweise hat den Vorteil, dass der Speicherplatz effizient genützt wird und dabei alle Versionen trotzdem jederzeit einsehbar und wiederherstellbar sind.

4 2 ARCHIV 4 Open Source Lizenz CVS unterliegt der Open-Source-Lizenz und darf deswegen von jedem frei benutzt und verbreitet werden. Es gilt jedoch ebenfalls zu erwähnen was CVS einem Entwickler nicht bietet. Die im Folgenden aufgeführten Punkte sind nicht als Nachteil von CVS zu betrachten, sondern wurden gezielt nicht in CVS integriert. kein Entwicklungssystem CVS schreibt in keiner Weise vor, wie ein Entwickler seine Projekte technisch und inhaltlich aufbauen soll. Es unterstützt einen mehr in der Weise, dass es für einen die komplette Übersicht über das Projekt behält. kein Ersatz für Projektleitung oder Kommunikation zwischen Entwicklern CVS ist nicht in der Lage die Leitung eines Projekts zu ersetzen und die Kommunikation zwischen den Entwicklern wird zwar unterstützt, aber auf keinen Fall ersetzt. keine automatische Behebung von Fehlern oder Verifizierung CVS wurde nicht dafür entwickelt Prgrammierfehler in einem Projekt zu finden oder gar die ganze Software zu verifiezeren. Dieser Aufgabe muss sich der Entwickler widmen oder spezielle Software für diese Zwecke verwenden. 2 Archiv Das Archiv oder auch Repository genannt, bezeichnet die zentrale Einheit in CVS, in der komplette Kopien von Dateien und Verzeichnissen, die sich unter der Versionsverwaltung befinden, gespeichert werden. 2.1 Benutzung Um CVS zu benutzen ist es erforderlich, dass man auf ein solches Archiv zugreift. Hierfür sind die entspechenden CVS Befehle zu verwenden, die die Verbindung mit dem Archiv automatisch erledigen und die erforderlichen Anpassungen an dem Archiv durchführen. Im Allgemeinen ist es nicht notwendig sich Gedanken über das Repository zu machen, denn die CVS Befehle verrichten die ganze Arbeit für einen. In manchen Fällen ist es jedoch unabdingbar, das Achiv auch per Hand zu ändern. Diese Sonderfälle zeichnen auch gleichzeitig auf die Schwächen von CVS hin. So ist beim Umbenennen und Verschieben von Dateien und Verzeichnissen ein manuelles Eingreifen des Benutzers erforderlich. 2.2 Aufbau Auf der Dateisystemebene betrachtet, ist ein CVS Archiv nichts anderes als ein Verzeichnis, in dem ein CVSROOT Verzeichnis und die Verzeichnisse für die jeweiligen Projekte angelegt sind. Das CVSROOT Verzeichnis beinhaltet Verwaltugsinformationen, die das gesamte Archiv betreffen. In den jeweiligen Projektverzeichnissen befinden sich,v -Dateien, die alle Änderungsinformationen

5 2 ARCHIV 5 der Dateien enthalten. Jede Datei, die sich unter Versionsverwaltung befindet, besitzt eine,v -Datei. Da alle Änderungen gespeichert werden, sind sie dementsprechend reproduzierbar. 2.3 Anlegen eines Archivs Um ein Archiv anzulegen, ist es nur erforderlich, das Verzeichnis, in dem das Archiv liegen soll, als solches zu deklarieren. Das geschieht mit dem entsprechenden CVS Befehl. Soll beispielsweise das Archiv in /usr/local/cvsroot liegen, würde der Aufruf folgendermassen aussehen: > cvs -d /usr/local/cvsroot init Es ist auffallend, dass CVS sofort nach diesem Aufruf ein Verzeichnis CVSROOT in dem Archiv anlegt. Um das Archiv lokal auf dem gleichen Rechner zu benutzen, ist nichts weiter notwendig. Soll jedoch CVS auf Anfragen aus dem Internet antworten, ist eine weitere Konfiguration notwendig, die ein interessierter Leser der offiziellen CVS Dokumentation entnimmt. 2.4 Zugriff Um auf ein Archiv zuzugreifen, muss zuerst der Pfad zu dem Archiv, auf das zugegriffen werden soll, festgelegt werden. Der Pfad kann entweder in eine globale Shell-Variable eingetragen werden > export CVSROOT=<Pfad zum Archiv> oder muss bei bestimmten Befehlen immer angegeben > cvs -d <Pfad zum Archiv> <Kommando> werden. Es gibt drei wichtigste Zugriffsmethoden: Lokales Archiv In diesem Fall befindet sich das Archiv lokal auf dem Rechner. Hier muss nur der Pfad zum Archiv gesetzt werden: > export CVSROOT=/usr/local/cvsroot Entferntes Archiv - PSERVER Hier handelt es sich um einen passwortauthentisierten Server, bei dem eine einmalige Anmeldung mit dem Passwort zur Authentisierung ausreicht. > export CVSROOT=:pserver:alex@srv:/usr/local/cvsroot > cvs login #nur einmalig durchzufuehren Hier wird der Benutzer alex am Server srv angemeldet. Entferntes Archiv - SSH Bei dieser Zugriffsmethode baut man einen gesicherten Tunnel zum Server auf, über den alle Daten übertragen werden.

6 3 PROJEKT MIT CVS 6 > export CVSROOT=:ext:alex@srv:/usr/local/cvsroot > export CVS_RSH=ssh Hier wird ebenfalls der Benutzer alex am Server srv angemeldet. Zusätzlich legt man über die globale Variable CVS RSH fest, welches Programm zur gesicherten Übertragung genutzt werden soll. In diesem Fall ist es ssh. 3 Projekt mit CVS In diesem Kapitel wir dem Leser erläutert, wie man ein Projekt mit CVS verwalten und benutzen kann. 3.1 Anlegen eines neuen CVS Projekts Um ein Projekt unter die Verwaltung von CVS zu stellen, muss man nur in das Verzeichnis wechseln und den ensprechenden Befehl import auszuführen. > cd projekt > cvs import -m "Projekt01" projekt01 unix-tools start N projekt01/makefile N projekt01/main.c No conflicts created by this import CVS durchsucht hierbei das ganze Verzeichnis rekursiv und übernimmt alle Dateien und Unterverzeichnisse. Mit der Option -m gibt man ein Initialkommentar für das Projekt an. Projekt01 bezeichnet den Namen des Projekts, das allerdings mit dem Projektverzeichnisnamen nicht übereinstimmen muss. Unix-tools und start bezeichnen die Hersteller- und Verkauftags, die jedoch an dieser Stelle nicht von Bedeutung sind. Ist ein Projektverzeichnis noch nicht vorhanden, so gilt es stets dieses anzulegen und nach der oberen Beschreibung in das Archiv zu übernehmen. 3.2 Auschecken einer Arbeitskopie Um mit einem Projekt aus dem CVS Archiv zu arbeiten, ist es notwendig sich zuerst eine Arbeitskopie aus dem Archiv zu holen. Dies geschieht mit dem Befehl checkout. > cvs checkout projekt01 cvs checkout: Updating projekt01 U projekt01/makefile U projekt01/main.c > cd projekt01 > ls CVS Makefile main.c Nach dem Befehl checkout muss der Name des Projekts angegeben werden, welches ausgecheckt werden soll. Es ist ebenfalls auffallend, dass in der bezogenen Arbeitskopie ein Verzeichnis CVS dazugekommen ist. In diesem sind Verwaltungsinformationen wie z.b. das Archiv, dem die Arbeitskopie entstammt, gespeichert.

7 3 PROJEKT MIT CVS Änderungen anschauen Um festzustellen, welche Dateien in der Arbeitskopie geändert wurden, ist der Befehl update hilfreich. > cvs -n update cvs update: Updating. M main.c Die Option -n gibt man dabei an, dass keine eventuelle schreibende Operationen erwünscht sind. Die Arbeitskopie wird dabei rekursiv durchsucht und listet alle Dateien, bei denen sich der Zustand gegenüber dem Archiv geändert hat. Zum Beispiel bedeutet M in dem oberen Bespiel, dass die Datei vom Benutzer verändert wurde. An dieser Stelle ist jedoch zu bemerken, dass mit dem Befehl update ebenfalls festgestellt werden kann, was andere Entwickler gemacht haben. Um sich die inhaltlichen Änderungen anzuschauen, kann der CVS Befehl diff benutzt werden. > cvs diff main.c cvs diff: Diffing main.c Index: main.c =============================================== RCS file: /usr/local/cvsroot/projekt01/main.c,v retrieving revision 1.1 diff -r1.1 main.c 4c4 < printf("hello wold!"); --- > printf("hello world!"); Der Befehl diff vergleicht die möglicherweise veränderten Dateien der Arbeitskopie mit den entsprechenden Gegenstücken aus dem Archiv. Die Unterschiede werden dabei auf dem Bildschirm ausgegeben, so dass der Benutzer diese vergleichen kann. Mit der Option -c wird die Ausgabe etwas leserlicher gestaltet und die Unterschiede sind somit leichter nachzuvollziehen. 3.4 Änderungen speichern Mit dem Befehl commit können alle gemachten Änderungen in das Archiv übertragen werden. > cvs commit -m "Fehler behoben" cvs commit: Examining. /usr/local/cvsroot/projekt01/main.c,v <-- main.c new revision: 1.2; previous revision: 1.1 Mit der Option -m wird ein Kommentar angegeben, der die Änderungen charakterisiert. Die Kommentarangabe ist bei dem Befehl commit Pflicht. Wird keine Datei angegeben, so durchsucht CVS rekursiv das ganze Verzeichnis und übermittelt alle Änderungen an das Archiv. Dabei wird bei jeder Datei, die verändert wurde, die Revisionsnummer inkrementiert.

8 3 PROJEKT MIT CVS Mehrere Benutzer Da CVS das Arbeiten an dem gleichen Projekt mehreren Entwicklern erlaubt, kann ein Benutzer im Verlauf der Entwicklung vor dem folgendem Problem stehen: > cvs commit cvs commit: Examining. cvs commit: Up-to-date check failed for main.c [...] Mit dieser Ausgabe signalisiert CVS dem Benutzer, dass seine Arbeitskopie nicht mehr die aktulle Revisionsnummer hat. Diese Tatsache ist dadurch bedingt, dass inzwischen andere Benutzer das Projekt verändert haben, in dem sie eine oder mehrere Dateien angepasst haben. In einem solchen Fall müssen die unterschiedlichen Revisionen zusammengeführt werden. > cvs update cvs update: Updating. RCS file: /usr/local/cvsroot/projekt01/main.c,v retrieving revision 1.3 retrieving revision 1.4 Merging differences between 1.3 and 1.4 into main.c rcsmerge: warning: conflicts during merge cvs update: conflicts found in main.c C main.c In diesem Fall vereinigt der Befehl update die Datei aus dem Archiv und die aus dem Arbeitsverzeichnis. Das Projektverzeichnis wird dabei rekursiv durchsucht und nur die betroffenen Dateien werden vereinigt. Bei diesem Vorgang können Konflikte auftreten. Ein Konflikt tritt immer dann auf, wenn zwei Benutzer die gleichen Stellen in der gleichen Datei verändert haben. Im Falle eines Konflikts fügt CVS an der entspechender Stelle beide Lösungen in die Datei ein. Der Benutzer muss sich dann für eine Lösung entscheiden, indem er die Datei editiert und die nicht gewünschten Stellen einfach löscht. [...] <<<<<<< main.c for (i = 0; i < size; i++) ======= for (i = 0; i < size - 1; i++) >>>>>>> 1.4 [...] Auf keinen Fall sollte am Ende dieses Vorgangs ein commit vergessen werden, der die gewünschte Version der Datei in das Archiv überträgt. 3.6 Überblick behalten Um einen Überblick über die Geschichte der Dateien zu bekommen, ist der Befehl log sehr nützlich.

9 3 PROJEKT MIT CVS 9 > cvs log main.c RCS file: /usr/local/cvsroot/projekt01/main.c,v Working file: main.c [...] revision 1.1 date: :40: ; author: set; [...] branches: 1.1.1; Initial revision revision date: :40: ; [...] lines: +0-0 Projekt01 In einer gut gegliederten und überschaulichen Ausgabe werden alle für die Datei gemachten Commits aufgelistet. Für jedes Commit sind auch solche Angaben wie Revisionnummer, Kommentar, Datum und Uhrzeit, Benutzername und sogar die Anzahl der geänderten Zeilen zu finden. Damit ist es eine gute Möglichkeit zu erfahren, was sich mit den einzelnen Datein in der Geschichte des Projekts abgespielt hat. 3.7 Änderungen zurücknehmen Sollte einmal die Notwendigkeit bestehen, die gemachten Änderungen zurückzunehmen, kann dies mit CVS sehr leicht realisiert werden. Als erstes gilt es zu erkennen, welche Änderungen genau zurückgenommen werden müssen. Für diesen Zweck kann der praktische Befehl diff verwendet werden. Mit der zusätzlichen Option -r können die Unterschiede zwischen zwei Revisionen nachvollzogen werden. cvs diff -c -r 1.4 -r 1.5 hello.c Index: main.c ============================================== RCS file: /usr/local/cvsroot/projekt01/main.c,v retrieving revision 1.4 retrieving revision 1.5 diff -r1.4 -r1.5 > printf("size: %d\n", size); In diesem Beispiel sind die Revisionen 1.4 und 1.5 verglichen worden. In diesem Fall ist eine neue Zeile mit dem Aufruf der Funktion printf dazugekommen. Wird bei dem Befehlsaufruf nur eine Revision angegeben, so wird mit der aktuell ausgecheckten Revision verglichen. Es ist jedoch nicht erwünscht in der Vergangenheit zurückzugehen. Vielmehr will man den Zustand aus der Vergangenheit auf den aktuellen Zeitpunkt übertragen, so dass die durchgeführte Korrektur ebenfalls rückgängig gemacht werden kann. Somit geht die zurückgenommene Revision nicht verloren, sondern bleibt vielmehr ein Teil der Historie und kann jederzeit wiederhergestellt werden. Um die Änderungen zurückzunehmen, wird zuerst der Befehl update herangezogen, um die aktuelle Arbeitskopie auf den neuesten Stand zu bringen. Ansch-

10 4 MOMENTAUFNAHMEN - TAGS 10 liessend wird wieder update mit der Option -j benützt, um die Änderungen zwischen zwei Revisionen rückgängig zu machen. > cvs update > cvs update -j 1.5 -j 1.4 main.c > cvs commit Im obigen Beispiel sind die Änderungen zwischen den Revisionen 1.4 und 1.5 rückgängig gemacht worden. Es ist dabei wichtig auf die Reihenfolge der Revisionen zu denken, sonst bleibt der gewünschte Effekt aus. 3.8 Aufräumen Nachdem man mit der Arbeit am Projekt fertig ist und die Arbeitskopie löschen möchte, ist es eine gute Angewohnheit sich zuerst von dem Projekt mit dem Befehl release zu lösen. Denn in diesem Fall weist CVS den Benutzer auf eventuelle noch nicht gespeicherte Daten hin. Mit der Option -d wird ebenfalls das Verzeichnis gelöscht. > cvs release -d projekt01 Akzeptable Vorgehensweise ist jedoch auch die vorherige Überprufung auf vorhandene nicht gespeicherte Änderungen in dem Archiv mit dem Befehl update, bevor man die Arbeitskopie endgültig löscht. 3.9 Nützliche Kommandos Im Folgenden sind noch einige nützliche Befehle aufgelistet: Dateien hinzufügen > cvs add main.c > cvs commit Dateien entfernen > rm main.c > cvs remove main.c > cvs commit Verzeichnisse hinzufügen > cvs add bin Binärdateien hinzufügen > cvs add -kb main > cvs commit 4 Momentaufnahmen - Tags Manchmal ist es sehr nützlich sich den Zustand eines Projekts in der Vergangenheit anzuschauen (z.b. stabile Version der Software). Da in CVS jedoch jede Datei eine eigene Revisionsnummer besitzt und diese sich im Laufe der Zeit stark von denen der anderen Dateien unterscheiden kann, wäre es sehr schwer sich die

11 4 MOMENTAUFNAHMEN - TAGS 11 Revisionsnummer jeder einzelnen Datei zu jedem Zeitpunkt der Entwicklung zu merken. Für diesen Zweck bietet CVS die Möglichkeit des Tagging. Dabei bildet CVS eine Gruppe von Revisionen, reprasentiert durch die aktuelle Arbeitskopie, auf einen Tag-String ab. > cvs tag rel-01 cvs tag: Tagging. T Makefile T main.c Im oberen Beispiel ist die aktuelle Arbeitskopie und damit auch die Revisionen der Dateien im Projekt mit einem Tag rel-01 markiert. Über dieses Tag kann der Benutzer später auf genau diesen Zustand des Projekts zugreifen. Zum besseren Verständnis kann man Tags auch mit zeitlichen Momentaufnahmen vergleichen. Es ist zu beachten, dass nach dem Tagging kein commit erforderlich ist. 4.1 Praktische Anwendung von Tags Im Folgenden sind einige Anwendungsbeispiele von Tags aufgelistet: cvs checkout -r rel-01 projekt01 Mit diesem Befehl holt man z.b. das Projekt mit dem Namen projekt01 in dem Zustand als es mit rel-01 markiert worden ist. cvs diff -r rel-01 main.c Hier vergleicht man die aktuelle Version der Datei main.c mit dem Zustand, als es mit rel-01 markiert worden ist. cvs update -r rel-01 Dieser Befehl wandelt die aktuelle Arbeitskopie in diejenige mit dem Tag rel-01 um. 4.2 Sticky Tags Holt man sich über Tags eine Version des Projekts aus der Vergangenheit, verändert es und versucht anschliessend die Änderungen abzuspeichern, so tritt der Folgende Sachverhalt auf: > cvs checkout -r rel-01 > vi projekt01/main.c > cvs commit cvs commit: Examining. cvs commit: sticky tag rel-01 for file... cvs [commit aborted]: correct above errors first! Das Problem in diesem Fall liegt darin, dass CVS alle Dateirevisionen aus der Vergangenheit mit den sogenannten Sticky Tags markiert und somit diese Dateien nicht mehr veränderbar macht. Die Stiky Tags können nur entfernt werden, wenn wenn man die Arbeitskopie auf den aktuellen Stand bringt oder Verzweigungen benutzt, deren Beschreibung jedoch den Rahmen dieser Ausarbeitung sprengen würde.

12 5 ZUSAMMENFASSUNG 12 5 Zusammenfassung An dieser Stelle ist es nützlich einen zusammenfassenden Überblick über CVS zu geben: CVS ist ein Versionsverwaltungssystem, mit dem grosse Software-Projekte verwaltet werden können. Organisiert ist es nach dem Client-Server-Konzept. Das bedeutet, dass alle Kopien der Projekte sich auf den Servern in den Repositorys befinden und die CVS Clients auf diese Resourcen zugreifen können. Übliche Vorgehensweise ist es, sich eine aktuelle Arbeitskopie mit dem Befehl checkout auf den lokalen Rechner zu holen, diese zu bearbeiten und anschliessend alle Änderungen mit commit zurück auf den Server zu übertragen. Darüber hinaus stehen noch solche Befehle wie update, log, diff, status, tag und viele andere dem Benutzer zur Verfügung. 5.1 CVS Befehlszyklus Im alltäglichen Gebrauch kommt ein Benutzer nur mit wenigen Befehlen aus, deren Anwendung einem Zyklus unterliegt.

13 5 ZUSAMMENFASSUNG 13 Das erste was ein Entwickler jeden Tag vor dem Bearbeiten des Projekts zu verrichten hat, ist die Aktualisierung der Arbeitskopie durch den Befehl update. Anschliessend wird das Projekt, das auf den neuesten Stand gabracht wurde, bearbeitet. Darunter versteht man die Veränderung der Dateien oder aber auch das Anwenden der Befehle add, remove usw. Die somit gemachten Änderungen können mit den Befehlen diff und status angeschaut werden. Falls andere Entwickler in der Zwischenzeit das Projekt auch verändert haben sollten, so muss in doesem Fall wieder der Befehl update ausgeführt werden. Abschliessend müssen die gemachten Änderungen an das Archiv mit dem Befehl commit übertragen werden. Nun kann an dieser Stelle der Befehlszyklus geschlossen werden, wenn der Benutzer sofort weiter das Projekt bearbeitet. Alternativ könnte der Benutzer die Arbeit an dem Projekt auch später fortsetzen. In diesem Fall muss dann aber wieder eine Aktualisierung der Arbeitskopie stattfinden. Erst danach kann das Projekt wieder bearbeitet werden. 5.2 Nachteile von CVS Aber CVS hat natürlich auch mit einigen Schwächen zu kämpfen, die durch Weiterentwicklungen wie SVN zum grössten Teil behoben worden sind. Verschieben und Umbenennen von Verzeichnissen/Dateien ist umständlich und bringt unerwünschte Nebenwirkungen mit sich Keine Verwaltung von Verzeichnissen und Metadateien wie Dateiberechtigungen Umständlicher Umgang mit Binärdateien Commits sind nicht atomar und können somit zu inkonsistenten Zuständen führen Operationen wie update, tagging und branching sind recht langsam

14 5 ZUSAMMENFASSUNG 14 Windows und Linux Clients behindern sich gegenseitig 5.3 Quellen - Ofizielle Homepage - Dokumentation - deutsche Dokumentation Man Pages

Concurrent Versions System (CVS)

Concurrent Versions System (CVS) Concurrent Versions System (CVS) Siarhei Trushyn Proseminar Unix Tools TUM 22. November 2005 Gliederung 1 Einfuhrung 2 Archiv 3 Projekt mit CVS 4 Momentaufnahmen 5 Zusammenfassung Was ist CVS? Denition

Mehr

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

CVS. The open standard for version control. (Concurrent Versions System) Maik Zemann CVS CVS Maik Zemann CVS (Concurrent Versions System) The open standard for version control 1 Gliederung Gliederung Was ist CVS? Motivation? Konzept von CVS Die wichtigsten Befehle Merging Logging im Quelltext

Mehr

Dokumentenverwaltung mit CVS eine Einführung

Dokumentenverwaltung mit CVS eine Einführung 1 Warum CVS? 2 Basiskonzepte 3 Vorbereitungen Dokumentenverwaltung mit CVS eine Einführung 4 Anlegen eines neuen Projekts 5 Bearbeiten eines Projekts 1 1 Warum CVS? CVS = Concurrent Versions System Problemstellung

Mehr

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

NT-Seminarvortrag am 11. Dezember Einführung in die Versionsverwaltung CVS. von Gordon Cichon NT-Seminarvortrag am 11. Dezember 2001 Einführung in die Versionsverwaltung CVS von Gordon Cichon Inhalt Einführung und Begriffserklärung CVS im Alltag Auschecken eines Projekts Anzeige von Änderungen

Mehr

CVS-Einführung. Sebastian Mancke, mancke@mancke-software.de

CVS-Einführung. Sebastian Mancke, mancke@mancke-software.de CVS-Einführung Sebastian Mancke, mancke@mancke-software.de Grundlagen Motivation und Anforderung Sobald ein Softwaresystem anwächst, ergeben sich Probleme im Umgang mit dem Quell Code. CVS (Concurrent

Mehr

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

Verteilte Versionskontrolle mit. Einführung und Nutzung von SVK FrOSCon 24./25. Juni 2006 Verteilte Versionskontrolle mit SVK Einführung und Nutzung von SVK FrOSCon 24./25. Juni 2006 Dipl.Ing.(FH) K. H. Marbaise Agenda Installation Grundbegriffe von SVK und Subversion Arbeit mit SVK Problem

Mehr

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

Versionsverwaltung. Dr.-Ing. Matthias Sand. Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2009 Versionsverwaltung Dr.-Ing. Matthias Sand Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2009 Versionsverwaltung 1/22 2009-06-03 Inhalt Motivation

Mehr

Software Engineering in der Praxis

Software Engineering in der Praxis Software Engineering in der Praxis Praktische Übungen Josef Adersberger Marc Spisländer Lehrstuhl für Software Engineering Friedrich-Alexander-Universität Erlangen-Nürnberg 19. Januar 2009 Inhalt Versionskontrolle

Mehr

CVS - Begriffe. Einführung in CVS

CVS - Begriffe. Einführung in CVS CVS - Concurrent Versions System Programm zur Versionskontrolle von Quellcode: Alle Versionsstände sind gespeichert. Die Änderungen sind nachvollziehbar. Alte Versionsstände lassen sich zurückholen. Mehrere

Mehr

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

Thomas Rau (mit Material von Peter Brichzin) Repositories zur Unterstützung von kollaborativen Arbeiten in Softwareprojekten (mit Material von Peter Brichzin) Repositories zur Unterstützung von kollaborativen Arbeiten in Softwareprojekten In Softwareprojekten gibt es oft organisatorische Probleme, die von der inhaltlichen Arbeit

Mehr

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

SVN in use. Roger Burkhardt Fachhochschule Nordwestschweiz Hochschule für Technik Institut für Geistes- und Naturwissenschaft 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

Mehr

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

Proseminar Unix-Tools CVS. 19.11.2002 Daniel Weber & Zhen Zhang Betreuer: Volker Baier Proseminar Unix-Tools CVS 19.11.2002 Daniel Weber & Zhen Zhang Betreuer: Volker Baier Was ist CVS? Was leistet CVS? ermöglicht Revisionsverwaltung für Projekte arbeitet auf ganzen Verzeichnisbäumen zentrales

Mehr

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

Inhaltsverzeichnis. 1 Einleitung. Literatur. 1.1 CVS (Concurrent Version System) [Pru03, Zee02, Ced05] Inhaltsverzeichnis 1 Einleitung 3 1.1 CVS (Concurrent Version System) [Pru03, Zee02, Ced05]....... 4 1.2 Eclipse als Java Entwicklungsumgebung................. 21 1 Einleitung Versionierung mit CVS Eclipse

Mehr

Versionskontrolle mit Subversion

Versionskontrolle mit Subversion Versionskontrolle mit Subversion Was ist Versionskontrolle? Ermöglicht gemeinsames Editieren von Quelltext und anderen Dateien Meist zentrale Ablage (Repository), Zugriff über Netzwerk Bearbeitung immer

Mehr

an Hand eines Beispiels Konsole

an Hand eines Beispiels Konsole Versionskontrolle an Hand eines Beispiels Konsole 1 / 14 PAUL SCHEREMET Inhaltsverzeichnis Einleitung 3 Das Repository anlegen (init) 4 Das erste Modul importieren (import) 5 Module auschecken (checkout

Mehr

Versionsverwaltung mit SVN

Versionsverwaltung mit SVN Ingo Sieverdingbeck (ingsie@informatik.uni-bremen.de) Jasper van den Ven (jasper@informatik.uni-bremen.de) AG Rechnernetze Universität Bremen C/C++-Vorkurs 2008 Gliederung 1 Wozu Versionsverwaltung? Ältere

Mehr

Einführung in Subversion

Einführung in Subversion Einführung in Subversion Benjamin Seppke AB KOGS Dept. Informatik Universität Hamburg Was ist Subversion? Ein Server-basiertes Versions-Verwaltungs- System Ermöglicht mehreren Benutzern die gemeinsame

Mehr

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

Arbeiten mit dem Versionsverwaltungssystem. Jannik Kramer Proseminar Werkzeuge für das wissenschaftliche Arbeiten Arbeiten mit dem Versionsverwaltungssystem Proseminar Werkzeuge für das wissenschaftliche Arbeiten 14.07.2014 Agentur für cooperation & communication Gliederung 1. Einführung 2. Funktionsweise 3. 4. Ausblick

Mehr

Versionsverwaltung. Seminar Softwareentwicklung in der Wissenschaft Robert Wiesner

Versionsverwaltung. Seminar Softwareentwicklung in der Wissenschaft Robert Wiesner Versionsverwaltung Seminar Softwareentwicklung in der Wissenschaft Robert Wiesner Gliederung Motivation Allgemeines Varianten der Versionsverwaltung Versionierungssysteme Git als Versionierungssystem-Beispiel

Mehr

CVS, Subversion und Darcs CVS, Subversion und Darcs

CVS, Subversion und Darcs CVS, Subversion und Darcs , Subversion und Darcs Roland Gion, 18.05.2005 1 Agenda Motivation Subversion Darcs Fazit Literatur Roland Gion, 18.05.2005 2 Motivation Motivation Subversion Darcs Fazit Literatur Roland Gion, 18.05.2005

Mehr

Softwaretechnik (Allgemeine Informatik) Überblick

Softwaretechnik (Allgemeine Informatik) Überblick Softwaretechnik (Allgemeine Informatik) Überblick 1 Einführung und Überblick 2 Abstraktion 3 Objektorientiertes Vorgehensmodell 4 Methoden der Anforderungs- und Problembereichsanalyse 5 UML-Diagramme 6

Mehr

8. Dokumentenverwaltung mit CVS eine Einführung

8. Dokumentenverwaltung mit CVS eine Einführung 8. Dokumentenverwaltung mit CVS eine Einführung 8.1 Warum CVS? 8.2 Basiskonzepte 8.3 Vorbereitungen 8.4 Anlegen eines neuen Projekts 8.5 Bearbeiten eines Projekts 8. Dokumentenverwaltung mit CVS 8-1 8.1

Mehr

Einführung zu Git. Das Nötigste für die Studienarbeit im Modul Datenkommunikation. Ege Inanc

Einführung zu Git. Das Nötigste für die Studienarbeit im Modul Datenkommunikation. Ege Inanc Einführung zu Git Das Nötigste für die Studienarbeit im Modul Datenkommunikation Ege Inanc Warum ist ein Versionskontrollsystem für die Studienarbeit nützlich? Arbeitet man im Team, kann es es passieren,

Mehr

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

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

Mehr

Enes Kurnaz, Oliver Nagel Institut für Mathematik und Informatik. Versionsverwaltung mit Git

Enes Kurnaz, Oliver Nagel Institut für Mathematik und Informatik. Versionsverwaltung mit Git Enes Kurnaz, Oliver Nagel Institut für Mathematik und Informatik Versionsverwaltung mit Git Inhalt Einführung - Was bedeutet Versionsverwaltung? Git - Geschichte - Funktionsweise - Terminologie erste Schritte

Mehr

Einführung in Subversion

Einführung in Subversion MIN-Fakultät Fachbereich Informatik Arbeitsbereich SAV/BV (KOGS) Einführung in Subversion Bildverabeitungs-Praktikum Sommersemester 2016 Leonie Dreschler-Fischer, David Mosteller und Benjamin Seppke Was

Mehr

Fachhochschule Bochum

Fachhochschule Bochum http://www.fh-bochum.de/fb6/ EDV-Labor Prof. Dr. Bernd Blümel Christian Metzger Seite 1 01.07.2003 Inhaltsverzeichnis 1. Begriffserklärungen:... 3 2. Installation:... 4 3. Voreinstellung von CVSROOT unter

Mehr

Das Concurrent Versions System (CVS)

Das Concurrent Versions System (CVS) Versionenkontrolle Das Concurrent Versions System (CVS) Vortrag im Proseminar Unix Tools 1 Markus Sander sander@in.tum.de 07.06.2005 Versionenkontrolle Gliederung 1 Versionenkontrolle 2 Versionenkontrolle

Mehr

Einführung in Git. master. Initial commit

Einführung in Git. master. Initial commit Einführung in Git master Initial commit Einführung in Git master Initial commit Neuer Algorithmus in foopy Einführung in Git master robert Initial commit Neuer Algorithmus in foopy Fehler in foopy behoben

Mehr

Concurrent Versions System CVS in der Technischen Informatik

Concurrent Versions System CVS in der Technischen Informatik Gliederung Concurrent Versions System CVS in der Technischen Informatik Philipp A. Hartmann Institut für Informatik II Technische Informatik Rheinische Friedrich-Wilhelms-Universität Bonn hartman@cs.uni-bonn.de

Mehr

Tutorium SS17 EINFÜHRUNG + BREAKOUT

Tutorium SS17 EINFÜHRUNG + BREAKOUT Tutorium SS17 EINFÜHRUNG + BREAKOUT L U K A S L E I P O L D E V I B E R C H T O L D L. L E I P O L D @ C A M P U S. L M U. D E B E R C H T O L D @ B I O. I F I. L M U. D E Überblick Homepage: https://www.bio.ifi.lmu.de/studium/ss2017/prk_prop/index.html

Mehr

Fachpraktikum Graphische Benutzungsoberflächen Wintersemester 2007/08

Fachpraktikum Graphische Benutzungsoberflächen Wintersemester 2007/08 Fachpraktikum Graphische Benutzungsoberflächen Wintersemester 2007/08 Mark Giereth, Steffen Koch, Christoph Müller, Guido Reina, Christiane Taras Versionsverwaltung Vorteile von Versionsverwaltungssystemen

Mehr

Fachpraktikum Graphische Benutzungsoberflächen Wintersemester 2010/2011

Fachpraktikum Graphische Benutzungsoberflächen Wintersemester 2010/2011 Fachpraktikum Graphische Benutzungsoberflächen Wintersemester 2010/2011 Michael Wörner, Michael Raschke, Bernhard Schmitz Passwörter & Versionsverwaltung Login Windows starten (manche Aufgaben lassen sich

Mehr

Programmieren 1 11 Versionsverwaltung mit Git - Grundlagen -

Programmieren 1 11 Versionsverwaltung mit Git - Grundlagen - Programmieren 1 11 Versionsverwaltung mit Git - Grundlagen - Bachelor Medieninformatik Wintersemester 2015/2016 Dipl.-Inform. Ilse Schmiedecke schmiedecke@beuth-hochschule.de 1 ... gestern lief es noch!!!

Mehr

Versionsmanagement. Software(technik)praktikum: Vorlesung 2: Versionsmanagement

Versionsmanagement. Software(technik)praktikum: Vorlesung 2: Versionsmanagement 1 Versionsmanagement 2 Versionsmanagement Motivation Ausgangslage Softwareentwicklung ist Teamarbeit Viel (indirekte) Kommunikation nötig Entwicklungswissen muss dokumentiert wissen Software besteht aus

Mehr

Einführung in Subversion

Einführung in Subversion MIN- Fakultät Fachbereich Informa7k Arbeitsbereich SAV/BV (KOGS) Einführung in Subversion Bildverabeitungs- PrakBkum Sommersemester 2014 Benjamin Seppke und Susanne Germer Was ist Subversion? Ein Server-

Mehr

Apache Subversion (SVN)

Apache Subversion (SVN) Apache Subversion (SVN) Datamining und Sequenzanalyse Marvin Meusel, Sascha Winter 18.10.2013 Apache Subversion (SVN) Datamining und Sequenzanalyse Marvin Meusel, Sascha Winter 18.10.2013 git Datamining

Mehr

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

Versionsverwaltung für die KU Betriebssysteme. Eine Einführung Versionsverwaltung für die KU Betriebssysteme Eine Einführung 1 1 Versionsverwaltung? Wozu? Nachvollziehbarkeit Wer hat was wann geändert Wiederherstellbarkeit kaputteditiert Wartbarkeit Verschiedene Versionen

Mehr

Einführung in Subversion

Einführung in Subversion MIN- Fakultät Fachbereich Informa7k Arbeitsbereich SAV/BV (KOGS) Einführung in Subversion Bildverabeitungs- PrakBkum Sommersemester 2015 Leonie Dreschler- Fischer, David Mosteller und Benjamin Seppke Was

Mehr

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

Versionskontrollsysteme. Uwe Berger & Markus Dahms <bralug@bralug.de> 1 Gliederung 1. Der Begriff 2. Aufgaben & Einsatzmöglichkeiten 3. Zentrale Konzepte 4. Bekannte Vertreter 5. Grafische Oberflächen 6. Quellen und Links 2 Der Begriff engl. Version Control

Mehr

Versionsverwaltung mit Subversion

Versionsverwaltung mit Subversion Objektorientierte Softwareentwicklung Sommersemester este 2010 0 R O O T S Kapitel 0 Versionsverwaltung mit Subversion Stand: 14.04.2010 Probleme während der Softwareentwicklung Viele Anforderungen Viele

Mehr

Software Engineering in der Praxis

Software Engineering in der Praxis Software Engineering in der Praxis Praktische Übungen Meitner, Spisländer FAU Erlangen-Nürnberg Versionskontrolle 1 / 30 Versionskontrolle Matthias Meitner Marc Spisländer Lehrstuhl für Software Engineering

Mehr

filp-r: Wmmmilt mmmmmmmmmmmmmmmm Galileo Computing

filp-r: Wmmmilt mmmmmmmmmmmmmmmm Galileo Computing filp-r: Wmmmilt mmmmmmmmmmmmmmmm Galileo Computing Inhalt Vorwort 15 Vorwort zur zweiten Auflage 17 1 Einleitung 21 1.1 Zielgruppe des Buchs 21 1.2 Aufbau des Buchs 21 1.3 Anforderungen an den Leser 23

Mehr

Versionsverwaltung mit Mercurial für Einsteiger

Versionsverwaltung mit Mercurial für Einsteiger Versionsverwaltung mit Mercurial für Einsteiger Chemnitzer Linuxtage 2009 Stefan Schwarzer, SSchwarzer.com info@sschwarzer.com Chemnitz, Germany, 2009-03-14 Versionsverwaltung mit Mercurial für Einsteiger

Mehr

Software(technik)praktikum: SVN-Tutorial

Software(technik)praktikum: SVN-Tutorial Software(technik)praktikum: SVN-Tutorial Übersicht Kurz: Übersicht VKM (siehe auch Vorlesungs-Folien) Werkzeuge Grundsätzliches Integration in Eclipse Praktische Übung mit SVN Commits, Updates, Konflikte

Mehr

Versionsverwaltung mit git

Versionsverwaltung mit git Versionsverwaltung mit git Versionsverwaltung Versionsverwaltungssysteme verwalten Dateien und zeichnen alle Änderungen an den Dateien im Laufe ihrer Entwicklung auf. alte Versionen sind stets verfügbar

Mehr

Versionsmanagementsysteme

Versionsmanagementsysteme Versionsmanagementsysteme Motivation Mitglieder einer Software Entwicklungsgruppe müssen: gemeinsamen Zugriff auf die Projektressourcen haben (File Sharing) gleichzeitig identische Ressourcen bearbeiten

Mehr

Apache Subversion (SVN)

Apache Subversion (SVN) Apache Subversion (SVN) Datamining und Sequenzanalyse Marvin Meusel, Sascha Winter 19.10.2012 Apache Subversion (SVN) Datamining und Sequenzanalyse Marvin Meusel, Sascha Winter 19.10.2012 git Datamining

Mehr

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

SVN-Einführung für das SEP DS und CM. Julian Timpner, Stefan Brenner, Stephan Rottmann SVN-Einführung für das SEP DS und CM Julian Timpner, Stefan Brenner, Stephan Rottmann 23. April 2014 Subversion (SVN) - Allgemeines Versionsverwaltung für Dokumente Primär für reine Textdateien (*.txt,

Mehr

Apache Subversion (SVN)

Apache Subversion (SVN) Apache Subversion (SVN) Datamining und Sequenzanalyse Marvin Meusel, Sascha Winter 19.10.2012 Apache Subversion (SVN) Datamining und Sequenzanalyse Marvin Meusel, Sascha Winter 19.10.2012 git Datamining

Mehr

Git-Grundlagen für Entwickler. Thomas Claudius

Git-Grundlagen für Entwickler. Thomas Claudius Git-Grundlagen für Entwickler Thomas Claudius Huber @thomasclaudiush Thomas Claudius Huber Principal Consultant bei Trivadis Pluralsight-Autor, Buchautor C#, XAML, TypeScript, Azure www.thomasclaudiushuber.com

Mehr

Prof. Dr. Marko Boger. Prof. Dr. Christian Johner. Versionsmanagement

Prof. Dr. Marko Boger. Prof. Dr. Christian Johner. Versionsmanagement Prof. Dr. Marko Boger Prof. Dr. Christian Johner Versionsmanagement Lernziele Probleme benennen können, die Versionsverwaltungssysteme lösen Mit Begriffen umgehen können: Check-out, commit, merge, pull,

Mehr

EasyWebNG - Screenshots

EasyWebNG - Screenshots EasyWebNG - Screenshots EasyWebNG ist und bleibt 100% kostenlos. Weitere Informationen finden Sie unter http://www.nbs-rottweil.de/easywebng Bereich Alle InstallationEasyWeb. Startseite Startseite nach

Mehr

Enterprise PHP Tools

Enterprise PHP Tools 2008 AGI-Information Management Consultants May be used for personal purporses only or by libraries associated to dandelon.com network. Stefan Priebsch Werkzeuge und Methoden für einen effizienten Entwicklungsprozess

Mehr

Medieninformatik Praktikum. Jens Rademacher 14.07.2013

Medieninformatik Praktikum. Jens Rademacher 14.07.2013 mit mit Medieninformatik Praktikum 14.07.2013 1 / 13 mit 2 / 13 Nutzen von und an en mit Verwaltung unterschiedlicher Versionen einer Datei Protokollierung von Änderungen (Änderung, Zeitpunkt, Person)

Mehr

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

Subversion als Werkzeug in der Software-Entwicklung Eine Einführung. Tobias G. Pfeiffer Freie Universität Berlin Subversion als Werkzeug in der Software-Entwicklung Eine Einführung Tobias G. Pfeiffer Freie Universität Berlin Seminar DG-Verfahren, 9. Juni 2009 Voraussetzungen/Ziele des Vortrags Situation Der Zuhörer

Mehr

Apache Subversion (SVN)

Apache Subversion (SVN) Apache Subversion (SVN) Datamining und Sequenzanalyse Marvin Meusel, Sascha Winter 19.10.2012 Apache Subversion (SVN) Datamining und Sequenzanalyse Marvin Meusel, Sascha Winter 19.10.2012 git Datamining

Mehr

2.3 - Das Verwaltungsmodul moveon installieren - SQL-Version

2.3 - Das Verwaltungsmodul moveon installieren - SQL-Version 2.3 - Das Verwaltungsmodul moveon installieren - SQL-Version Das Verwaltungsmodul moveon besteht aus zwei Komponenten: dem moveon Client und der moveon Datenbank. Der moveon Client enthält alle Formulare,

Mehr

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

Versionsmanagement. Fachgebiet Softwaretechnik, Heinz Nixdorf Institut, Universität Paderborn Versionsmanagement 1 Versionsmanagement Motivation Ausgangslage Softwareentwicklung ist Teamarbeit Viel (indirekte) Kommunikation nötig Entwicklungswissen muss dokumentiert werden Software besteht aus

Mehr

Versionskontrolle mit Subversion

Versionskontrolle mit Subversion mit im Rahmen der Projektarbeit "Moderne Methoden der Parallelverarbeitung" Michael Süß Universität Kassel http://www.se.e-technik.uni-kassel.de/se/index.php?id=494 Michael Süß, November 23, 2004 mit -

Mehr

31.01.2013. Vorlesung Programmieren. Versionskontrollsysteme. Ziele von VCS. Versionskontrolle

31.01.2013. Vorlesung Programmieren. Versionskontrollsysteme. Ziele von VCS. Versionskontrolle Vorlesung Programmieren Versionskontrolle Dr. Dennis Pfisterer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.de/people/pfisterer Versionskontrollsysteme Wie organisiert man die

Mehr

Kurzanleitung zu. von Daniel Jettka 18.11.2008

Kurzanleitung zu. von Daniel Jettka 18.11.2008 Kurzanleitung zu Tigris.org Open Source Software Engineering Tools von Daniel Jettka 18.11.2008 Inhaltsverzeichnis 1.Einführung...1 2.Das Projektarchivs...3 2.1.Anlegen des Projektarchivs...3 2.2.Organisation

Mehr

Subversion. Einstieg in die. Versionskontrolle

Subversion. Einstieg in die. Versionskontrolle 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

Mehr

Versionsverwaltung von Softwareartefakten. 21. Oktober 2014

Versionsverwaltung von Softwareartefakten. 21. Oktober 2014 Versionsverwaltung von Softwareartefakten 21. Oktober 2014 Überblick Wie verwaltet man Softwareartefakte? Versionskontrolle für verschiedene Softwareartefakte: Anforderungsdokumente, Modelle, Code, Testdateien,

Mehr

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

JUnit (Version 4.x) Framework zur Unterstützung von Unit-Tests. Wir verwenden nicht JUnit 3.x. Ideen dahinter. Test-Methode JUnit (Version 4.x) Framework zur Unterstützung von Unit-Tests Automatisierte Ausführung von Tests Wir verwenden nicht JUnit 3.x Erfordert anderes Programmierkonzept Ideen dahinter Testgetriebene Entwicklung:

Mehr

Programmieren 2 05 Versionsverwaltung mit Git

Programmieren 2 05 Versionsverwaltung mit Git Programmieren 2 05 Versionsverwaltung mit Git Bachelor Medieninformatik Sommersemester 2015 Dipl.-Inform. Ilse Schmiedecke schmiedecke@beuth-hochschule.de 1 ... gestern lief es noch!!! neues Feature eingebaut

Mehr

Einführung in Versions- und Konfigurationsmanagementsysteme

Einführung in Versions- und Konfigurationsmanagementsysteme Einführung in Versions- und Konfigurationsmanagementsysteme Softwaretechnikpraktikum Sommersemester 2002 Jörg Niere nierej@upb.de Inhalt Arbeiten im Team Konzepte Werkzeugvergleich CVS Besonderheiten Versions-

Mehr

Einführung Git Interna Workflows Referenzen. Git. Fast Version Control System. Michael Kuhn michael.kuhn@informatik.uni-hamburg.de

Einführung Git Interna Workflows Referenzen. Git. Fast Version Control System. Michael Kuhn michael.kuhn@informatik.uni-hamburg.de Git Fast Version Control System Michael Kuhn michael.kuhn@informatik.uni-hamburg.de Arbeitsbereich Wissenschaftliches Rechnen Fachbereich Informatik Universität Hamburg 2011-09-28 1 / 16 1 Einführung Überblick

Mehr

Einführung in Subversion

Einführung in Subversion Einführung in Subversion Benjamin Seppke AB KOGS Dept. Informatik Universität Hamburg Was ist Subversion? Ein Server-basiertes Versions-Verwaltungs- System Ermöglicht mehreren Benutzern die gemeinsame

Mehr

Konfiguration Agenda Anywhere

Konfiguration Agenda Anywhere Konfiguration Agenda Anywhere Bereich: IT-Lösungen - Inhaltsverzeichnis 1. Ziel 2 2. Agenda Anywhere-USB-Stick 2 2.1. Passwort ändern 2 2.2. Zugang sperren (USB-Stick verloren) 4 2.3. Benutzer-Ersatz-USB-Stick

Mehr

FS 2013. cs108 Programmierpraktikum Subversion. Lukas Beck Cedric Geissmann Alexander Stiemer

FS 2013. cs108 Programmierpraktikum Subversion. Lukas Beck Cedric Geissmann Alexander Stiemer cs108 Programmierpraktikum Subversion Lukas Beck Cedric Geissmann Alexander Stiemer Probleme in der SW-Entwicklung Teamarbeit Gemeinsamer (und gleichzeitiger) Zugriff auf Ressourcen Dateiserver Datenverlust

Mehr

Versionskontrolle mit SVK

Versionskontrolle mit SVK Versionskontrolle Ingo Blechschmidt LUGA 1. Februar 2006 Inhalt Versionskontrolle 1 Versionskontrolle Grundidee Geschichte 2 Design Praxis: Single-User- 3 Versionskontrolle Versionskontrolle

Mehr

Arbeiten mit der Shell Teil 1

Arbeiten mit der Shell Teil 1 Arbeiten mit der Shell Teil 1 Linux-Kurs der Unix-AG Benjamin Eberle 4. Mai 2016 Die Komandozeile unter Linux Wird als Shell bezeichnet Die Shell ist eines der vielen Programme einer Linux-Distribution

Mehr

Vorlesung Unix-Praktikum

Vorlesung Unix-Praktikum Vorlesung 6. skontrolle mit Technische Fakultät Universität Bielefeld 14. November 2018 1 / 35 Willkommen zur sechsten Vorlesung Was gab es beim letzten Mal? Aliasse.bashrc, Umgebungsvariablen Shellskripte

Mehr

Hochschule Für Angewandte Wissenschaften FH München Sommersemester Thomas Kolarz. Folie 1.

Hochschule Für Angewandte Wissenschaften FH München Sommersemester Thomas Kolarz. Folie 1. Praktikum Btib Betriebssysteme t I Hochschule Für Angewandte Wissenschaften FH München Sommersemester 2010 thomas.kolarz@hm.edu Folie 1 Vorbereitung Booten Sie den Rechner unter Linux und melden Sie sich

Mehr

Semesterprojekt Entwicklung einer Suchmaschine für Alternativmethoden zu Tierversuchen. Versionierung und Bugtracking mit GitHub

Semesterprojekt Entwicklung einer Suchmaschine für Alternativmethoden zu Tierversuchen. Versionierung und Bugtracking mit GitHub Semesterprojekt Entwicklung einer Suchmaschine für Alternativmethoden zu Tierversuchen Wintersemester 17/18 Versionierung und Bugtracking mit GitHub Marc Bux buxmarcn@informatik.hu-berlin.de Ziele der

Mehr

2 Einführung in das Konfigurationsmanagement 11

2 Einführung in das Konfigurationsmanagement 11 v 1 Einleitung 1 1.1 Wer dieses Buch lesen sollte........................ 2 1.2 Warum Subversion, Maven und Redmine?............. 3 1.3 Wo ist das Ant-Kapitel?........................... 5 1.4 Abgrenzung

Mehr

Überblick. SVN Einführung, Softwaretechnologie, Sommersemester 2007 R O O T S

Überblick. SVN Einführung, Softwaretechnologie, Sommersemester 2007 R O O T S Softwaretechnologie Dr. Günter Kniesel Julia Kuck, Malte Appeltauer, Mark Schmatz SS 2007 Subversion (SVN) Einführung in die Versionskontrolle mit SVN Überblick 1. Probleme bei der Softwareentwicklung

Mehr

Versionskontrolle mit Subversion

Versionskontrolle mit Subversion Versionskontrolle mit Subversion Dipl.-Inf. (FH) Jan Fader 14. März 2008 Dipl.-Inf. (FH) Jan Fader Versionskontrolle mit Subversion 14. März 2008 1 / 10 Einführung Vorteile eines Versionskontrollsystems

Mehr

Script-Upgrade. Vorraussetzungen. Folgende Meldungstypen werden dabei verwendet: Vom Fahrzeug zur Zentrale. Quittungstexte vom Fahrzeug (Type 11.

Script-Upgrade. Vorraussetzungen. Folgende Meldungstypen werden dabei verwendet: Vom Fahrzeug zur Zentrale. Quittungstexte vom Fahrzeug (Type 11. Script-Upgrade An Fahrzeuge können Update-Befehle gesendet werden, die diese dazu veranlassen, Scripte und Dateien von einem Server im Internet zu laden. Diese Script-Dateien stellen normalerweise die

Mehr

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

Versionsverwaltung GIT & SVN. Alexander aus der Fünten. Proseminar: Methoden und Werkzeuge, SS 2012. Lehrstuhl i9, Prof. Dr. T. Versionsverwaltung GIT & SVN Alexander aus der Fünten Proseminar: Methoden und Werkzeuge, SS 2012 Lehrstuhl i9, Prof. Dr. T. Seidl RWTH Aachen Ablauf Was ist Versionsverwaltung? Arbeitsmodelle Lokale,

Mehr

Klicken Sie, um das Format des Titeltextes zu bearbeiten

Klicken Sie, um das Format des Titeltextes zu bearbeiten Klicken Sie, um das Format des Titeltextes zu bearbeiten Versionsverwaltung mit SVN Eike Slogsnat 18.01.2013 1 Gliederung Wichtige Linux-Befehle Aufgaben einer Versionsverwaltung Struktur Befehle Verzweigungen

Mehr

Einführung in Subversion

Einführung in Subversion zentrale Speicherung im Magazin (repository) beliebig viele Arbeitsbereiche (working copy) Vorteile: mehrere Benutzer gleichzeitig effektiver durch Parallelität bei disjunkten (Zeilen-)Bereichen werden

Mehr

Einführung in die Programmiertechnik

Einführung in die Programmiertechnik Einführung in die Programmiertechnik Versionsverwaltung 2 Software Configuration Management (SCM) Software Configuration Management (SCM) Aufgaben: Verwaltung des checkin/checkout von Quellen Festhalten

Mehr

Von SVN zu Git. Daniel Willmann <daniel@totalueberwachung.de> 2011-10-18 cbna

Von SVN zu Git. Daniel Willmann <daniel@totalueberwachung.de> 2011-10-18 cbna Von SVN zu Git Daniel Willmann 2011-10-18 cbna Inhalt Einführung Git für SVN Benutzer Weitergehende Konzepte Zusammenfassung Daniel Willmann Von SVN zu Git 2 Über den Vortragenden

Mehr

Einführung in Subversion. Tutorium SWP

Einführung in Subversion. Tutorium SWP Einführung in Mehrere Personen arbeiten am gleichen Dokument Probleme: Austausch/Integration der Ergebnisse? Überlappende Arbeitsbereiche? Datensicherung? Kommunikation? Wer hat was geändert? Einführung

Mehr

Werkzeuge zum Versions- und Variantenmanagement: CVS/Subversion vs. ClearCase

Werkzeuge zum Versions- und Variantenmanagement: CVS/Subversion vs. ClearCase Westfälische Wilhelms- Universität Münster Ausarbeitung Werkzeuge zum Versions- und Variantenmanagement: CVS/Subversion vs. ClearCase Im Rahmen des Seminars Skiseminar: Variantenmanagement Lars Fischer

Mehr

Versionsverwaltungen

Versionsverwaltungen Versionsverwaltungen Holger Jakobs bibjah@bg.bib.de, holger@jakobs.com 2006-01-13 Inhaltsverzeichnis 1 RCS 2 1.1 Das RCS-Verzeichnis.............................. 2 1.2 Erzeugen der ersten Version einer

Mehr

Konfiguration Agenda Anywhere

Konfiguration Agenda Anywhere Konfiguration Agenda Anywhere Bereich: IT-Lösungen - Inhaltsverzeichnis 1. Ziel 2 2. Agenda Anywhere-USB-Stick 2 2.1. Passwort ändern 2 2.2. Zugang sperren (USB-Stick verloren) 4 2.3. Benutzer-Ersatz-USB-Stick

Mehr

S.M. Hartmann GmbH IT Solutions

S.M. Hartmann GmbH IT Solutions S.M. Hartmann GmbH 82008 Unterhaching Prager Straße 7 www.smhsoftware.de S.M. Hartmann GmbH IT Solutions Software für den modernen Handel SMH-Connect/400 Version V6.0 Beschreibung SMH-Connect: iseries

Mehr

Linux-Camp: Linux als Server am Beispiel LAMP

Linux-Camp: Linux als Server am Beispiel LAMP Linux-Camp: Linux als Server am Beispiel LAMP Linux, Apache, MySQL, PHP mit Ubuntu Version 8.04 Inhalt LAMP-Komponenten LAMP-Komponenten installieren, konfigurieren und prüfen Apache Webserver PHP5 MySQL

Mehr

MUNIA Bedienungsanleitung

MUNIA Bedienungsanleitung MUNIA Bedienungsanleitung by Daisoft www.daisoft.it 2 Inhaltsverzeichnis I II 2.1 2.2 2.3 2.4 2.5 2.6 III 3.1 3.2 3.3 IV 4.1 4.2 V 5.1 5.2 5.3 Einleitung... 3 Fälligkeitsarten... 5 Fälligkeitsarten...

Mehr

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

Crashkurs Subversion / Trac / Provisioning. Jan Zieschang, 04.01.2008, Berlin Crashkurs Subversion / Trac / Provisioning Jan Zieschang, 04.01.2008, Berlin Agenda 2 Subversion Das SCM TortoiseSvn Der Client Trac Das Tracking-Tool Provisioning Das Provisioning Tool Arbeiten mit Subversion/TortoiseSvn

Mehr

Anleitung. Kontenverwaltung auf mail.tbits.net

Anleitung.  Kontenverwaltung auf mail.tbits.net Anleitung E-Mail Kontenverwaltung auf mail.tbits.net E-Mail Kontenverwaltung auf mail.tbits.net 2 E-Mail Kontenverwaltung auf mail.tbits.net Leitfaden für Kunden Inhaltsverzeichnis 1. Überblick über die

Mehr

Komponenten und Komponententypen

Komponenten und Komponententypen Komponenten und Komponententypen AUVESY GmbH Fichtenstraße 38B D-76829, Landau Deutschland Inhalt Komponenten und Komponententypen 3 Komponenten und Komponententypen verstehen 3 Neue Komponente erstellen

Mehr

Inhaltsverzeichnis ERWEITERUNG. 26. Januar 2014 RECORDTIME ENTERPRISE (LINUX) BENUTZERANLEITUNG-

Inhaltsverzeichnis ERWEITERUNG. 26. Januar 2014 RECORDTIME ENTERPRISE (LINUX) BENUTZERANLEITUNG- Inhaltsverzeichnis Installation... 2 Installation Microsoft SQL Server... 2 Installation Wine... 2 Installation FreeTDS und unixodbc... 2 Installation RecordTime... 3 Konfiguration... 3 Konfiguration Microsoft

Mehr

Moodle aktuell halten mit Git

Moodle aktuell halten mit Git Moodle aktuell halten mit Git 3a 1 2 3b 3c 4c Vorstellung Andreas Grabs Softwareentwickler Seit 2010 Moodle Core- Entwickler Freier Mitarbeiter eledia GmbH Inhalt Allgemeines Allgmeine Vorteile Vorteile

Mehr

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

Software-Engineering Grundlagen des Software-Engineering 7.3 Sourcecode-Verwaltung mit Versionsmanagement-Systemen Einführung in Subversion (SVN) Software-Engineering Grundlagen des Software-Engineering 7.3 Sourcecode-Verwaltung mit Versionsmanagement-Systemen Einführung in Subversion (SVN) Prof. Dr. Rolf Dornberger Software-Engineering: 7.3 Versionsmanagement-Systeme

Mehr