Versionsverwaltung von Softwareartefakten. Dr. Thorsten Arendt Marburg, 05. November 2015
|
|
- Emil Scholz
- vor 6 Jahren
- Abrufe
Transkript
1 Versionsverwaltung von Softwareartefakten Dr. Thorsten Arendt Marburg, 05. November 2015
2 Überblick Warum ist die Versionsverwaltung von Softwareartefakten wichtig? Wie verwaltet man Softwareartefakte? Versionskontrolle für Anforderungsdokumente, Modelle, Code, Testdateien, Dokumentationen, etc. Möglichst unabhängiges Arbeiten im Team Wie erhält man konsistente Konfigurationen? Einführung in Versionsverwaltungswerkzeuge Subversion (SVN): Zentrale Verwaltung von Dateien und Ordnern Git: Verteilte Versionsverwaltung 2 Software-Evolution WS 2015/2016
3 Versionsprobleme Vermeide Fragen und Probleme wie diese: Welche ist die neueste Version eines Softwaresystems? Ich kann eine ältere Version der Software nicht finden. Ich kann eine bestimmte Version des Softwaresystems nicht erstellen, weil bestimmte Dateien fehlen. Eine gerade erstellte Datei wurde von einer älteren Version überschrieben, weil gerade nicht aufgepasst wurde. sie parallel geändert wurde. 3 Software-Evolution WS 2015/2016
4 Gründe für Versionsprobleme Software ist einfach zu ändern. Mehrere Personen dürfen dieselben Artefakte ändern, eventuell sogar zur gleichen Zeit. Es ist einfach, Inkonsistenzen zu erzeugen. schwer erkennbare Fehler zu erzeugen. Beispiele: Zwei Entwickler führen unabhängig voneinander Änderungen an verschiedenen Klassen durch. Diese passen nicht zueinander. Source Code geändert: Binärcode, Design, Dokumentation und Tests werden inkonsistent. 4 Software-Evolution WS 2015/2016
5 Motivation für klassische Versionsverwaltung Ein Versionsverwaltungssystem soll das gemeinschaftliche Arbeiten an Dokumenten ermöglichen. Hauptproblem: Wie ermöglicht das Versionsverwaltungssystem den Nutzern Zugang zu gemeinsamen Dokumenten, ohne versehentlich Informationen zu löschen? Ansatz: Alle gemeinschaftlich genutzten Dokumente werden in einem Repository (einem speziellen Datenbehälter) verwaltet. Die Nutzer bekommen Lese- bzw. Schreibzugang zu Dokumenten im Repository. Werkzeuge: CVS, SVN, Git, etc. 5 Software-Evolution WS 2015/2016
6 Das Problem Zwei Nutzer (Harry und Sally) entscheiden sich, an demselben Dokument (A) zu arbeiten. Beide führen verschiedene Änderungen an ihren lokalen Versionen des Dokuments durch. Die lokalen Versionen werden nacheinander in das Repository geschrieben. Sally überschreibt dadurch eventuell Änderungen von Harry. [Version Control with Subversion] 6 Software-Evolution WS 2015/2016
7 Problemlösung 1: Sperren von Dokumenten Harry sperrt das Dokument und arbeitet lokal daran. Sally möchte das Dokument lesen, es ist aber gesperrt. Harry schreibt sein geändertes Dokument ins Repository und entsperrt es. Sally kann nun das Dokument lesen und für andere sperren. [Version Control with Subversion] 7 Software-Evolution WS 2015/2016
8 Wie gut ist Problemlösung 1? Administrative Probleme Gesperrte Dokumente werden vergessen zu entsperren. Andere Nutzer kommen an die gesperrten Dokumente nicht ran. Unnötige Sequentialisierung der Arbeit Wenn zwei Nutzer ein Dokument an verschiedenen Stellen ändern möchten, könnten sie dies auch gleichzeitig tun. Falsches Gefühl von Sicherheit Zwei Nutzer arbeiten getrennt auf den Dokumenten A und B. Was passiert, wenn A von B abhängig ist? A und B passen nicht mehr zusammen. Die Nutzer müssen dieses Problem diskutieren. 8 Software-Evolution WS 2015/2016
9 Problemlösung 2: Mischen von Dokumenten Harry und Sally kopieren das Dokument in ihre lokalen Ordner. Beide arbeiten unabhängig daran. Sally schreibt als Erste das Dokument in das Repository zurück. Harry kann das Dokument nicht zurückschreiben: out of date [Version Control with Subversion] 9 Software-Evolution WS 2015/2016
10 Problemlösung 2: Mischen von Dokumenten Harry vergleicht seine lokale Version mit der aktuellen Version im Repository. Beide Versionen werden gemischt. Die neue (gemischte) Version wird zurückgeschrieben. Die neue Version kann ausgelesen werden. [Version Control with Subversion] 10 Software-Evolution WS 2015/2016
11 Wie gut ist Problemlösung 2? Ein Dokument liegt in zwei Versionen vor. Die Änderungen eines Nutzers überlappen sich mit den Änderungen des zweiten Nutzers. Diese Situation wird Konflikt genannt. Lassen sich zwei Dokumente immer mischen? Die Unterschiede zwischen zwei Versionen lassen sich durch Werkzeuge anzeigen. Ein Nutzer (eventuell in Absprache mit dem zweiten Nutzer) entscheidet jeden einzelnen Konflikt. 11 Software-Evolution WS 2015/2016
12 Problemlösung 2: Mischen von Dokumenten Zwei-Wege-Mischen Drei-Wege-Mischen Zwei unabhängige Dokumente werden gemischt. Dazu müssen Korrespondenzen gefunden werden. Ausgehend von einer Originalversion werden Differenzen berechnet und gemischt. 12 Software-Evolution WS 2015/2016
13 Revisionen Revision: Ein Zustand der zu verwaltenden Softwareartefakte Softwareartefakte sind in Ordnern gegliedert. Versionsverwaltung sollte nicht nur die Dateien, sondern auch die Ordner verwalten. [Version Control with Subversion] 13 Software-Evolution WS 2015/2016
14 Subversion (SVN) Open Source Software 2000 von CollabNet entwickelt Seit 2009 bei Apache Features Versionierung von Ordnern und Dateien Auch das Umbenennen, Erzeugen und Löschen von Ordnern werden festgehalten. Sammlung von Änderungen wird als Transaktion verwaltet. Subversion für Eclipse Subclipse Subversive Subversion im Windows Datei-Explorer TortoiseSVN 14 Software-Evolution WS 2015/2016
15 Git Software für verteilte Versionsverwaltung ohne zentralen Server Lokale Kopie des gesamten Repositories Lokale Funktionalität ähnlich wie bei SVN Neue Features: Versionen als Schnappschüsse eines Mini-Dateisystems Nichtlineare Entwicklung: einfaches Branching und Merging Datenabgleich zwischen verschiedenen Repositories möglich Werkzeuge: Git Cloud Hosting: GitHub, GitLab, BitBucket, etc. Git Client: z.b. Atlassian SourceTree Git in Eclipse: EGit Git im Datei-Explorer: TortoiseGit 15 Software-Evolution WS 2015/2016
16 Aufbau eines zentralen Repository Ein zentrales Repository für die Arbeitsgruppe z.b. in der Cloud [Atlassian SourceTree] Lokale Arbeitsbereiche oder lokale Repositories [Bitbucket] 16 Software-Evolution WS 2015/2016
17 Git in Eclipse Eclipse Plugin: EGit Wechsel zur Git Repository Perspective Versionsverwaltung starten: Neues Git Repository anlegen mit Create Vorhandenes Repository kopieren mit Clone Vorhandenes Projekt in ein neues Repository legen: Team Share Project Lokales Arbeiten in der Java- Perspektive. Git-Befehle unter Team [EGit] 17 Software-Evolution WS 2015/2016
18 Clone eines Git Repository Um eine lokale Kopie des entfernten Repository zu erstellen Auswahl einzelner Branches Angabe des lokalen Ordners [EGit] 18 Software-Evolution WS 2015/2016
19 Laden lokaler Sourcen Push lädt einen lokalen Branch oder eine Reihe von Commits in ein entferntes Repository. zum Veröffentlichen von Beiträgen Pull lädt einen Branch aus einem entfernten Repository. 19 Software-Evolution WS 2015/2016
20 Entferntes Repository 20 Software-Evolution WS 2015/2016
21 Typische Git-Befehle auf lokalem Repository Start der Versionierung: git add <filename> Datei auschecken: git checkout <filename> Versionierungsabfragen: git status (Status der Dateien) git log (Historie) Änderungsanzeige (vor commit) git diff Datei einchecken: git add <filename> ( Index) git commit (indizierte Dateien) git commit a <filename> Datei aus Repository löschen: git rm <filename> 21 Software-Evolution WS 2015/2016
22 Versionen als Schnappschüsse [ProGit] Version: Mini-Dateisystem in einem Zustand Unveränderte Dateien werden nicht kopiert. Git fügt nur Daten hinzu. 22 Software-Evolution WS 2015/2016
23 Austausch zwischen Repositories: Ein Beispielablauf Ein zentrales Repository Lokales Mischen Beispiel: John kann nach Jessica kein Push ausführen. Er muss ihre Änderungen holen und lokal mischen. Das Holen von Änderungen (fetch, pull) führt zu einem neuen Branch. Das lokale Mischen (merge) führt zwei Branches zusammen. [ProGit] 23 Software-Evolution WS 2015/2016
24 Verschiedene Revisionszweige (Branches) Gründe für mehrere Zweige: Verschiedene Alternativen gleichzeitig ausprobieren Normales Geschäft und größerer Evolutionsschritt Releases Unterscheidung in den zentralen Branch und weiteren Branches 2. Branch Original 1. Branch 3. Branch 24 Software-Evolution WS 2015/2016
25 Branches (1) Commit-Objekt Referenz auf einen Schnappschuss Commit-Objekte zeigen jeweils auf das vorige. Weitere Einträge sind der Autor, der Committer und die Commit-Message [ProGit] 25 Software-Evolution WS 2015/2016
26 Branches (2) Der Default-Branch heisst master. Zwei Branches können auf denselben Schnappschuss verweisen. Der aktuelle Branch heisst HEAD. 26 Software-Evolution WS 2015/2016
27 Branches (3) Die Historie läuft auseinander: Beispiel: master -Branch testing -Branch Der Nutzer kann beliebig zwischen den Branches wechseln. die Branches zusammenführen 27 Software-Evolution WS 2015/2016
28 Merging (1) Merging von aufeinanderfolgenden Commits / Schnappschüssen Fast Forward 28 Software-Evolution WS 2015/2016
29 Merging (2) Merging von auseinander laufenden Commits / Schnappschüssen 3-Wege-Mischen Ein neuer Schnappschuss entsteht Merge Commit Mehrere Vorgänger 29 Software-Evolution WS 2015/2016
30 Rebasing Alternatives Merging von aufeinanderfolgenden Commits / Schnappschüssen Verwendung eines Patches des einen auf den anderen Schnappschuss Anschließender Fast Forward 30 Software-Evolution WS 2015/2016
31 Beispiel für Branches 31 Software-Evolution WS 2015/2016
32 Arbeiten mit Releases Entwicklerteam arbeitet auf dem Hauptzweig. Erstellung eines Release-Zweigs Z.B.: branches/1.0 Team arbeitet parallel: Intensives Testen der Release-Version Neue Features in der Hauptversion (für Version 2.0) Der Release-Zweig bekommt ein Tag und wird releast. Tag: ein Schnappschuss des Projekts Z.B: /tags/1.0.0 Der Release-Zweig wird weiter gepflegt. Z.B.: nach Fehlerbeseitigung /tags/ Software-Evolution WS 2015/2016
33 Versionsmanagement-Aktivitäten Welche Konfigurationselemente haben wir? D.h. Dateien welcher Typen müssen versionsverwaltet werden? Nach welchen Strategien werden die Versionen verwaltet? Nach welchen Änderungen muss eingecheckt werden? Wann darf eingecheckt werden? Wer hat welche Rollen und Verantwortlichkeiten? Welche Personen sind für welche Komponenten zuständig? Welche Werkzeuge sollen benutzt werden? Häufig können nicht alle Dateitypen gleich gut verwaltet werden. Wo liegt das (Haupt-) Repository? 33 Software-Evolution WS 2015/2016
34 Versionierung in verschiedenen Entwicklungsprozessen (1) Kleines Projekt Kleines Team Ein zentrales Repository Jedes Team-Mitglied darf alle Dateien lesen und schreiben. Bekanntes Modell [Kamann] 34 Software-Evolution WS 2015/2016
35 Versionierung in verschiedenen Entwicklungsprozessen (2) Mittelgroßes Projekt Jedes Entwicklerteam hat ein eigenes Repository. Die eigenen Entwickler haben Schreibzugriff. Alle anderen Entwickler haben Lesezugriff. Der Integration Manager liest Änderungen und integriert sie in die Hauptversion. Er hat Schreibzugriff auf das Haupt-Repository. Alle anderen Entwickler haben Lesezugriff. [Kamann] 35 Software-Evolution WS 2015/2016
36 Versionierung in verschiedenen Entwicklungsprozessen (3) Sehr großes Projekt Hunderte von Entwicklern Hierarchische Versionierung Leutnant: Integration Manager für einen Teil des Projekts Diktator: Integration Manager für alle Teile des Projekts Er hat Schreibzugriff auf das Haupt-Repository. [Kamann] 36 Software-Evolution WS 2015/2016
37 Zusammenfassung Wesentliche Features der Versionsverwaltung: Softwareentwicklungs-Artefakte sind ständigen Änderungen unterworfen, die versioniert werden sollen. Unterstützung für nebenläufiges Arbeiten im Team. Konsistente Konfigurationen durch die Versionierung von Ordnern und Dateien Häufiges Commit mit Dokumentation der Änderungen Verteilte Repositories für verteilte Versionskontrolle im Projekt Fortschritt in der Werkzeugentwicklung für Versionsverwaltung: CVS SVN Git Das Arbeiten mit Zweigen ist einfach und billig. Es macht das Arbeiten mit mehreren Releases einfacher. Es erlaubt eine entspannte und sichere Durchführung von Evolutionsschritten. 37 Software-Evolution WS 2015/2016
38 Sekundär-Literatur S. M. Easterbrook, E. E. Beck, J. S. Goodlet, L. Plowman, M. Sharples and C. C. Wood: A Survey of Empirical Studies of Conflict, Easterbrook, S. M. (ed), 1993 CSCW: Cooperation or Conflict?, Springer-Verlag, pp Ben Collins-Sussman, Brian W. Fitzpatrick, C. Michael Pilato: Version Control with Subversion, 2011, online erhältlich unter Apache Subversion: Subversive: Subclipse: Scott Chacon, Ben Straub: ProGit, 2nd Edition, 2014, online erhältlich unter GitHub: Bitbucket: Atlassian SourceTree: EGit: Thorsten Kamann: GIT oder Subversion? Sei kein Depp!, Eclipse Magazin, Ausgabe Software-Evolution WS 2015/2016
Versionsverwaltung von Softwareartefakten. Dr. Thorsten Arendt Marburg, 06. November 2014
Versionsverwaltung von Softwareartefakten Dr. Thorsten Arendt Marburg, 06. November 2014 Überblick Warum ist die Versionsverwaltung von Softwareartefakten wichtig? Wie verwaltet man Softwareartefakte?
MehrVersionsverwaltung 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,
MehrVersionsverwaltung. 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
MehrFakultät für Informatik Praktische Einführung in die Versionsverwaltung mit Eclipse
Fakultät für Informatik Praktische Einführung in die Versionsverwaltung mit Eclipse PR1 Luca Frank 1327960@stud.hs-mannheim.de Hochschule Mannheim University of Applied Sciences Gliederung 1. Was ist ein
MehrVersionsverwaltung mit Eclipse. PR1 - Medizinische Informatik (IMB) Dennis-Immanuel Czogalla
Versionsverwaltung mit Eclipse PR1 - Medizinische Informatik (IMB) Dennis-Immanuel Czogalla 1410116@stud.hs-mannheim.de Versionsverwaltung? System zur Protokollierung von Änderungen an Dateien (Version
MehrPraktikum Ingenieurinformatik (PI)
Praktikum Ingenieurinformatik (PI) Verteilte Versionskontrolle mit Git und Github Björn Meyer Fachgebiet Technische Informatik 1 Agenda Einleitung Motivation Versionskontrolle Ansätze Git Funktionen Arbeiten
MehrEinfü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,
MehrSemesterprojekt 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
MehrTool-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
MehrArbeiten 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
MehrVersionsverwaltung. 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
MehrEnes 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
MehrProf. 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,
MehrVersionierung und Bugtracking mit Git(Hub)
Semesterprojekt Verteilte Echtzeitrecherche in Genomdaten Versionierung und Bugtracking mit Git(Hub) Marc Bux (bux@informatik.hu-berlin.de) Ziele der Versionierung Revisionsgeschichte eines Projekts erhalten
MehrSoftware 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
MehrVersionskontrolle 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
MehrSoftware(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
MehrSVN 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
MehrPraktische Einführung in die Versionsverwaltung mit Eclipse
Praktische Einführung in die Versionsverwaltung mit Eclipse 1423841 - Laura Most 7IMB 1423841@stud.hs-mannheim.de Hochschule Mannheim University of Applied Sciences Version Control Systems (VCS) Vorteile:
MehrProgrammieren 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!!!
MehrSoftware-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
MehrGit-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
MehrVersionsverwaltung 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
MehrProgrammieren 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
MehrVersionsmanagement. Software(technik)praktikum: Vorlesung 3: Versionsmanagement
Versionsmanagement 1 Software(technik)praktikum: Vorlesung 3: Versionsmanagement Versionsmanagement Motivation Ausgangslage Softwareentwicklung ist Teamarbeit Viel (indirekte) Kommunikation nötig Entwicklungswissen
MehrVersionsverwaltungssysteme
Versionsverwaltungssysteme Severin Neumann IEEE Student Branch Passau 24. Mai 2012 1 / 8 Motivation Wir möchten Versionsverwaltungssysteme verwenden, um folgende Ziele zu erreichen: 2 / 8 Motivation Wir
MehrVersionsverwaltung 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
MehrGit. Dezentrale Versionsverwaltung im Team - Grundlagen und Workflows. Bearbeitet von René Preißel, Bjørn Stachmann
Git Dezentrale Versionsverwaltung im Team - Grundlagen und Workflows Bearbeitet von René Preißel, Bjørn Stachmann 3., aktualisierte und erweiterte Auflage 2015. Taschenbuch. 348 S. Softcover ISBN 978 3
MehrVersionsverwaltung im Domino Designer. Holger Chudek Perfect Chain
Versionsverwaltung im Domino Designer Holger Chudek Perfect Chain Agenda Git /egit Grundlagen Szenarien Einzelkämpfer Teamentwicklung Fortschrittliche Szenarien für grössere Teams Grundlagen Teamentwicklung
MehrVon 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
MehrFakultät für Informatik Praktische Einführung in die Versionsverwaltung mit Eclipse
Fakultät für Informatik Praktische Einführung in die Versionsverwaltung mit Eclipse 16.10.2018 PR1 IMB Stella Neser 1610286@hs-mannheim.de Hochschule Mannheim University of Applied Sciences Inhalt 1. 2.
MehrJUnit (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:
Mehrgit & git-flow Jens Sandmann 14.12.2013 Warpzone Münster e.v. Jens Sandmann (WZ) git & git-flow 14.12.2013 1 / 31
git & git-flow Jens Sandmann Warpzone Münster e.v. 14.12.2013 Jens Sandmann (WZ) git & git-flow 14.12.2013 1 / 31 Überblick 1 git Versionskontrolle Allgemein VCS mit git 2 git flow 3 git nutzen 4 Anhang
MehrVersionskontrolle 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 -
MehrVersionsmanagement. 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
MehrEinfü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
MehrVerteilte 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
MehrSemesterprojekt Semantic Text Browsing
Semesterprojekt Semantic Text Browsing Ulf Leser, Philippe Thomas Ulf Leser: Semesterprojekt Semantic Text Browsing, WS 13/14 1 Versionierung: Einführung Revisionsgeschichte eines Projekts erhalten/nachvollziehen
MehrThomas 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
MehrVersionsverwaltung mit Git. Eine Einführung ins Source Code Management
Versionsverwaltung mit Git Eine Einführung ins Source Code Management Software Engineering, Wintersemester 2012/2013 Agenda Einführung Beispiele für Version Control Systems Geschichte und Entwicklung von
MehrVersionsverwaltung mit Git
Versionsverwaltung mit Git Danyel Coban 343803 Karim Abou Zeid 354656 2. Juni 2017 1 Einleitung Die folgende Ausarbeitung gibt dem Leser eine übersichtliche Einführung in die Versionsverwaltung mit Git,
MehrFramework zur Unterstützung von Unit-Tests
JUnit Framework zur Unterstützung von Unit-Tests Automatisierte Ausführung von Tests Ideen dahinter Testgetriebene Entwicklung: Erst testen, dann programmieren Alle Testfälle häufig ausführen (nach jeder
MehrSoftware Engineering
8. Version Control with Git Jonathan Brachthäuser Einordnung: Zusammenfassung Anforderungsermittlung - (Nicht- )funktionale Anf. - Anwendungsfälle - Userstories Problem Anforderung Continuous Delivery
MehrMoodle 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
MehrDie Projek*ools. Files, Git, Tickets & Time
Die Projek*ools Files, Git, Tickets & Time Agenda Die Abgabe von Dokumenten: Files Das Pflegen von Software: Versionskontrolle mit Git Management von Anforderungen: Tickets Management von Zeit: Time Files
MehrMedieninformatik 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)
MehrApache 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
MehrVersionsverwaltung 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,
MehrTorsten Flatter inovex GmbH. "Git.NET" gibt's nicht?
Torsten Flatter inovex GmbH "Git.NET" gibt's nicht? Vorstellung Torsten Flatter inovex GmbH.NET / C# seit 2004 VSS, CVS, SVN, TFS, hq, git Enterprise-Umfeld Agenda Überblick Grundlagen Einsatzbereiche
MehrRevisionskontrollsystem GIT
Revisionskontrollsystem GIT Diplom Informatiker Gregor Rebel 1/ 19 Revisionskontrollsystem GIT v1.2 Versionskontrollsysteme Erfassung von Änderungen an Dateien Protokollierung von Änderungen Wiederherstellung
MehrVersionsverwaltung mit git. Christoph Knabe FB VI 17.04.2014
Versionsverwaltung mit git Christoph Knabe FB VI 17.04.2014 Inhalt Probleme bei Software-Entwicklung Begriffe in git Geschichte von git Installation Was ist verteilt an git? Mischen verteilter Änderungen
MehrSoftware 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
MehrEinfü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
MehrVersionskontrolle mit SVK
Versionskontrolle Ingo Blechschmidt LUGA 1. Februar 2006 Inhalt Versionskontrolle 1 Versionskontrolle Grundidee Geschichte 2 Design Praxis: Single-User- 3 Versionskontrolle Versionskontrolle
MehrApache 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
MehrApache 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
MehrVersionsverwaltung mit Git
Versionsverwaltung mit Git (Softwareentwicklung I (IB)) Prof. Dr. Oliver Braun Letzte Änderung: 18.03.2018 20:09 Versionsverwaltung mit Git 1/12 Versionen egal was Sie bearbeiten, es wird meist mehrere
MehrVersionsverwaltung 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
MehrApache 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
MehrEinfü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
MehrEinfü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
Mehrgit Datamining und Sequenzanalyse Markus Fleischauer, Kai Dührkop
git Datamining und Sequenzanalyse Markus Fleischauer, Kai Dührkop 19.10.2018 Was ist Versionsverwaltung? Beispiel: Wikipedia Beispiel: Wikipedia Beispiel: Wikipedia Was ist Versionsverwaltung? ermöglicht
MehrVerteile Revisionskontrolle mit GIT
Verteile Revisionskontrolle mit GIT Christian Thäter ct@pipapo.org 25. Juni 2007 Über diesen Vortrag 1. Was ist Revisionskontrolle? 2. Wie funktioniert GIT? 3. GIT Workshop Fragen werden nach jedem Abschnitt
MehrTutorium 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
MehrServer und manueller Spieler
Server und manueller Spieler Plenum Programmierpraktikum 2006-11-09 Organisatorisches Scheine von anoshkin, bartoszek, belskyy, borsch, drickl, dumro, esmarch, gottscha, grytsak, kunzh, landmann, langal,
MehrFS 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
MehrCrashkurs 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
MehrVersionsverwaltung mit SVN
Versionsverwaltung mit SVN Jan-Philipp Kappmeier Technische Universität Berlin 11. 04. 2012 Versionsverwaltung Typische Situation in der Softwareentwicklung Mehrere Personen arbeiten an einem Projekt Arbeiten
MehrSemesterprojekt Implementierung eines Brettspiels (inklusive computergesteuerter Spieler) Versionierung und Bugtracking mit GitHub
Semesterprojekt Implementierung eines Brettspiels (inklusive computergesteuerter Spieler) Wintersemester 16/17 Versionierung und Bugtracking mit GitHub Patrick Schäfer patrick.schaefer@hu-berlin.de Marc
MehrVersionsverwaltung mit git
Versionsverwaltung mit git Simon Retsch Jonatan Strube 13.12.2017 Inhalt 1. Prinzip Versionsverwaltung 2. Grundlagen 3. Anbieter 4. Apps 5. Vorführung S. Retsch & J. Strube Versionsverwaltung mit git Folie
MehrSoftwaretechnik (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
MehrVersionsmanagement mit Subversion
Tobias Wassermann Versionsmanagement mit Subversion Installation, Konfiguration, Administration Einleitung 11 Teil I Einstieg in Subversion 13 i Subversion: Was ist das? 15 I.I Versionsmanagement: Rückblick
MehrVersionkontrolle mit git
Versionkontrolle mit git Wer bin ich? Wer bin ich? Federico Hernandez Wer bin ich? Darmstadt Wer bin ich? Göteborg, Schweden Wer bin ich? Mathematiker Wer bin ich? Senior Linux/Unix System Administrator
MehrMercurial. or how I learned to stop worrying and love the merge. Ted Naleid IAIK
Mercurial or how I learned to stop worrying and love the merge Ted Naleid Inhalt Einleitung Vergleich SVN / Mercurial Mercurial verstehen Zusammenarbeit mit Mercurial Demo Mercurial - Intro Entwickelt
MehrSWP Übersetzerbau im SS 13 Einführung und Organisatorisches. Till Zoppke Maximilian Konzack Yves Müller Freie Universität Berlin
SWP Übersetzerbau im SS 13 Einführung und Organisatorisches Till Zoppke Maximilian Konzack Yves Müller Freie Universität Berlin Auftaktveranstaltung am 13. April 2013 Übersicht Projektidee Einteilung in
MehrGit. Dezentrale Versionsverwaltung im Team Grundlagen und Workflows. Rene Preißel Björn Stachmann. 2., aktualisierte und erweiterte Auflage
Rene Preißel Björn Stachmann Git / Dezentrale Versionsverwaltung im Team Grundlagen und Workflows 2., aktualisierte und erweiterte Auflage fäjj dpunkt.verlag XV Erste Schritte 1 Grundlegende Konzepte 1
MehrErfolgreicher Ums9eg auf Git
CONCEPT PEOPLE IT- TALK Ein Erfahrungsbericht Erfolgreicher Ums9eg auf Git René Preißel (etosquare) Nils Hartmann (Techniker Krankenkasse) VORSTELLUNG René Preißel Freiberuflicher SoGwarearchitekt, Entwickler
MehrVersionsverwaltung mit Git
Versionsverwaltung mit Git Silvan Heller Slides für CS108: Marcel Neidinger Department Mathematik & Informatik, Universität Basel HS17 Software Engineering
Mehr31.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
MehrProgrammieren 2 06 Git-Teamwork und Egit
Programmieren 2 06 Git-Teamwork und Egit Bachelor Medieninformatik Sommersemester 2015 Dipl.-Inform. Ilse Schmiedecke schmiedecke@beuth-hochschule.de 1 Die Bildquelle Die schönen Schemazeichnungen in dieser
MehrSubversion Grundprinzipien und grundlegende Anwendung
Fakultät Elektrotechnik und Informationstechnik Institut für Automatisierungstechnik Subversion Grundprinzipien und grundlegende Anwendung Dresden, 05.05.2009 01 Einführung Was ist Subversion überhaupt
MehrSoftwareentwicklung I (IB) Versionsverwaltung mit Git
Versionsverwaltung mit Git Prof. Dr. Oliver Braun Fakultät für Informatik und Mathematik Hochschule München Letzte Änderung: 12.10.2017 06:55 Inhaltsverzeichnis Versionen......................................
MehrInhaltsverzeichnis. 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
MehrVerteilte Versionskontrolle mit GIT. 17.04.2012 - Dortmund Ansgar Brauner - GreenPocket GmbH - Köln
Verteilte Versionskontrolle mit GIT 17.04.2012 - Dortmund Ansgar Brauner - GreenPocket GmbH - Köln 1 über mich 32 Jahre alt Softwareentwickler bei der Firma GreenPocket in Köln Java EE Entwickler und Rails
MehrEinfü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
MehrVersionsmanagement. 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
MehrEinfü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
MehrVersionsverwaltung 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
MehrBrauche ich ein DVCS?
Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim Kristian Köhler Steffen Schluff Version:.0 www.oio.de info@oio.de Gliederung Einleitung Grundbegriffe Workflows Demo Fazit 2 Gliederung Einleitung
MehrVersionskontrolle: Subversion und Git
Versionskontrolle: Subversion und Git Ein Vortrag von Sascha Schulz, sascha@s10z.de Universität Hamburg Modul: Seminar Effiziente Programmierung November 2016 1 / 27 Ablauf 1. Motivation: Warum versionieren?
MehrSoftware-Engineering Grundlagen des Software-Engineering
Software-Engineering Grundlagen des Software-Engineering 7.3 Sourcecode-Verwaltung mit Versionsmanagement-Systemen Einführung in Subversion (SVN) Lösung Prof. Dr. Rolf Dornberger Software-Engineering:
MehrVersionsverwaltung mit GIT
Versionsverwaltung mit GIT Michaela Rindt mrindt@informatik.uni-siegen.de Praktikum Effizientes Programmieren (PEP) 12.04.2016 Geschichte und Allgemeines Git ist ein Versionskontrollsystem (VCS) für Dokumente
MehrLinux Cafe 2013 11 11. Referent: Bernd Strößenreuther
Versionsverwaltung mit Git Linux Cafe 2013 11 11 Referent: Bernd Strößenreuther mailto:linux cafe@stroessenreuther.net Lizenz Sie dürfen dieses Dokument verwenden unter den Bedingungen der Creative Commons
MehrFachpraktikum 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
MehrDistributed Source Code Management mit git
Distributed Source Code Management mit git GEOPHYSIKALISCHES INSTITUT 1 KIT Einführung Universitätindes git Landes Baden-Württemberg und nationales Thomas Forschungszentrum Forbriger in der Helmholtz-Gemeinschaft
MehrEinfü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-
MehrNT-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