Software Engineering

Größe: px
Ab Seite anzeigen:

Download "Software Engineering"

Transkript

1 8. Version Control with Git Jonathan Brachthäuser

2 Einordnung: Zusammenfassung Anforderungsermittlung - (Nicht- )funktionale Anf. - Anwendungsfälle - Userstories Problem Anforderung Continuous Delivery & Feedback Testing / TDD / BDD Modellierung - UML - OO- Design - Design / Architektur Patterns - SOLID Design Prinzipien - GRASP Lösung Entwurf Realisierung - Programmierrichtlinien - Code Smells - Versionsverwaltung - Continuous Integration - Code Reviews - Pair Programming - Dokumentation 2

3 Literaturempfehlung Online verfügbar unter: scm.com/book/en/v2 Onlinetutorials auf: und Außerdem: Übungsblätter zu git sind auf der Vorlesungsseite zu finden 3

4 Versionskontrolle

5 Was ist Versionskontrolle? Ein Versionskontrollsystem (VCS) speichert... den Inhalt aller Dateien eines Projektes... die gesamte Änderungsgeschichte eines Projektes Wer hat wann und warum, welche Dateien wie geändert? 5

6 Wozu Versionskontrolle? Zurücksetzen des Projektes auf einen früheren Stand Dokumentation der Projektgeschichte und der Beiträge verschiedener Entwickler Parallele Entwicklung an mehreren Entwicklungszweigen Koordination der Arbeit verschiedener Entwickler 6

7 Begriffe Repository Änderungsgeschichte und Dateiinhalte für alle Versionen Arbeitskopie Kopie aller Dateien einer Version Status Zusammengefasster Unterschied zwischen der Working Copy und dem Repository Diff Unterschiede der Dateien zwischen Repository und Arbeitskopie oder anderer Version Checkout Dateiinhalte einer Version aus Repository in Working Copy kopieren Commit Derzeitigen Stand der Working Copy als neue Version in das Repository übernehmen 7

8 Begriffe Repository Änderungsgeschichte und Dateiinhalte für alle Versionen Arbeitskopie Kopie aller Dateien einer Version Status Zusammengefasster Unterschied zwischen der Working Copy und dem Repository Diff Unterschiede der Dateien zwischen Repository und Arbeitskopie oder anderer Version Checkout Dateiinhalte einer Version aus Repository in Working Copy kopieren Commit Derzeitigen Stand der Working Copy als neue Version in das Repository übernehmen 8

9 Begriffe Repository Änderungsgeschichte und Dateiinhalte für alle Versionen Arbeitskopie Kopie aller Dateien einer Version Status Zusammengefasster Unterschied zwischen der Working Copy und dem Repository Diff Unterschiede der Dateien zwischen Repository und Arbeitskopie oder anderer Version Checkout Dateiinhalte einer Version aus Repository in Working Copy kopieren Commit Derzeitigen Stand der Working Copy als neue Version in das Repository übernehmen 9

10 Wo ist das Repository gespeichert? Lokale Versionskontrollsysteme Local Computer Working Copy Repository File 2 File 1 Version 3 Version 2 Version 1 10

11 Wo ist das Repository gespeichert? Zentrale Versionskontrollsysteme Computer A Computer B Working Copy Computer C Working Copy File 2 Working Copy File 2 File File 1 2 File 1 File 1 Central VCS Server Repository Version 3 Version 2 Version 1 11

12 Wo ist das Repository gespeichert? Verteilte Versionskontrollsysteme Server Computer Computer A Repository Version 3... Working Copy File 1... Repository Version 3... Computer B Repository Version 3... Working Copy File

13 Begriffe Repository Änderungsgeschichte und Dateiinhalte für alle Versionen Arbeitskopie Kopie aller Dateien einer Version Status Zusammengefasster Unterschied zwischen der Working Copy und dem Repository Diff Unterschiede der Dateien zwischen Repository und Arbeitskopie oder anderer Version Checkout Dateiinhalte einer Version aus Repository in Working Copy kopieren Commit Derzeitigen Stand der Working Copy als neue Version in das Repository übernehmen 13

14 Begriffe Repository Änderungsgeschichte und Dateiinhalte für alle Versionen Arbeitskopie Kopie aller Dateien einer Version Status Zusammengefasster Unterschied zwischen der Working Copy und dem Repository Diff Unterschiede der Dateien zwischen Repository und Arbeitskopie oder anderer Version Checkout Dateiinhalte einer Version aus Repository in Working Copy kopieren Commit Derzeitigen Stand der Working Copy als neue Version in das Repository übernehmen 14

15 Diffs answer = 7 factor = 3 while (answer < 60) { answer *= factor factor += 1 } vorher answer = 7 factor = 2 while (answer < 40) { answer *= factor factor += 1 } nachher 15 answer = 7 -factor = 3 -while (answer < 60) { +factor = 2 +while (answer < 40) { answer *= factor factor += 1 } diff

16 Was ist im Repository gespeichert? Diff basierte Versionskontrollsysteme Veränderung über die Zeit Version 1 Version 2 Version 3 File A Δ1 File B File C Δ1 Δ2 16

17 Was ist im Repository gespeichert? Snapshot basierte Versionskontrollsysteme Veränderung über die Zeit Version 1 Version 2 Version 3 File A A1 A1 File B B B File C C1 C2 17

18 Begriffe Repository Änderungsgeschichte und Dateiinhalte für alle Versionen Arbeitskopie Kopie aller Dateien einer Version Status Zusammengefasster Unterschied zwischen der Working Copy und dem Repository Diff Unterschiede der Dateien zwischen Repository und Arbeitskopie oder anderer Version Checkout Dateiinhalte einer Version aus Repository in Working Copy kopieren Commit Derzeitigen Stand der Working Copy als neue Version in das Repository übernehmen 18

19 Begriffe Repository Änderungsgeschichte und Dateiinhalte für alle Versionen Arbeitskopie Kopie aller Dateien einer Version Status Zusammengefasster Unterschied zwischen der Working Copy und dem Repository Diff Unterschiede der Dateien zwischen Repository und Arbeitskopie oder anderer Version Checkout Dateiinhalte einer Version aus Repository in Working Copy kopieren Commit Derzeitigen Stand der Working Copy als neue Version in das Repository übernehmen 19

20 git

21 Was ist git? Verteiltes Versionskontrollsystem Ursprünglich von Linus Torvalds zur Versionskontrolle des Linux Kernels entwickelt Heute weit verbreitet in Open Source, als auch zur proprietären Entwicklung 21

22 Wie funktioniert git? Verteilt Snapshot- basiert Effiziente Speicherung durch Hash- Adressierung Index Viele Kommandozeilenbefehle 22

23 Drei Schritte in Git Git unterscheidet zwischen Working Copy, Staging Area und Repository Computer Working Copy Staging Area Repository Copy project (checkout) Stage changes (add) Confirm (commit) 23

24 ~ mkdir my-prog 24

25 my-prog ~ mkdir my-prog ~ 25

26 my-prog ~ mkdir my-prog ~ ~ cd my-prog 26

27 my-prog ~ ~ cd my-prog ~/my-prog 27

28 my-prog ~ ~ cd my-prog ~/my-prog git init 28

29 my-prog.git ~/my-prog git init Initialized empty Git repository in ~/my-prog/.git/ 29

30 my-prog.git Hello.java ~/my-prog git init Initialized empty Git repository in ~/my-prog/.git/ 30

31 my-prog.git Hello.java Initialized empty Git repository in ~/my-prog/.git/ ~/my-prog git add Hello.java 31

32 index Hello.java my-prog.git Hello.java ~ cd my-prog ~/my-prog git add Hello.java ~/my-prog 32

33 index Hello.java my-prog.git Hello.java ~ ~ cd my-prog ~/my-prog git add Hello.java ~/my-prog git commit -m "Add hello" 33

34 HEAD 9ad66d3 index tree Hello.java my-prog.git Hello.java ~/my-prog git commit -m "Add hello" [ 9ad66d3] Add hello 1 file changed, 5 insertions (+) 34

35 HEAD 9ad66d3 index tree Hello.java ~/my-prog git commit -m "Add hello" [ 9ad66d3] Add hello 1 file changed, 5 insertions (+) 35 my-prog.git Hello.java lib Util.java

36 HEAD 9ad66d3 index tree Hello.java ~/my-prog git add lib/util.java my-prog.git Hello.java lib Util.java 36

37 HEAD 9ad66d3 tree index Hello.java Hello.java lib Util.java ~/my-prog git add lib/util.java ~/my-prog my-prog.git Hello.java lib Util.java 37

38 HEAD 9ad66d3 tree index Hello.java Hello.java lib Util.java ~/my-prog git add lib/util.java ~/my-prog git commit -m "Add util" my-prog.git Hello.java lib Util.java 38

39 HEAD 9ad66d3 tree index f tree Hello.java Hello.java lib Util.java ~/my-prog git commit -m "Add util" [ f146864] Add util 1 file changed, 3 insertions (+) 39 my-prog.git Hello.java lib Util.java

40 HEAD 9ad66d3 tree index f tree Hello.java Hello.java lib Util.java ~/my-prog git commit -m "Add util" [ f146864] Add util 1 file changed, 3 insertions (+) 40 my-prog.git Hello.java lib Util.java

41 HEAD 9ad66d3 tree index f tree Hello.java Hello.java lib Util.java ~/my-prog git add Hello.java my-prog.git Hello.java lib Util.java 41

42 HEAD 9ad66d3 f tree tree index Hello.java Hello.java lib Util.java Hello.java lib Util.java ~/my-prog git add Hello.java ~/my-prog my-prog.git Hello.java lib Util.java 42

43 HEAD 9ad66d3 f tree tree index Hello.java Hello.java lib Util.java Hello.java lib Util.java ~/my-prog git add Hello.java ~/my-prog git commit -m "Add bye" my-prog.git Hello.java lib Util.java 43

44 HEAD 9ad66d3 f b94c tree tree index tree Hello.java Hello.java lib Util.java Hello.java lib Util.java ~/my-prog git commit -m "Add bye" [ 153b94c] Add bye 1 file changed, 1 insertions (+) 44 my-prog.git Hello.java lib Util.java

45 Demo (init, status, diff, add (- p), diff - - staged, checkout, commit, log)

46 Die wichtigsten Befehle (1 / 4) git help Liste wichtiger Befehle git help command Hilfe zu einzelnen Befehlen git init Neues Repository initialisieren git add Arbeitskopie Index git checkout Index Arbeitskopie git commit Index Repository 46

47 Die wichtigsten Befehle (2 / 4) git status Informationen zur Arbeitskopie und HEAD anzeigen git show commit Informationen zu Commit zeigen git reflog Entwicklung von HEAD zeigen git diff Arbeitskopie vs. Index git diff - - staged Index vs. Head git log Änderungsgeschichte zeigen 47

48 Branches & Merging

49 ~/my-prog 543 HEAD 49

50 ~/my-prog git add ~/my-prog 543 HEAD 50

51 ~/my-prog git add ~/my-prog git commit ~/my-prog 543 6f5 HEAD 51

52 ~/my-prog git add ~/my-prog git commit ~/my-prog git branch experiment ~/my-prog experiment 543 6f5 HEAD 52

53 ~/my-prog git add ~/my-prog git commit ~/my-prog git branch experiment ~/my-prog git checkout experiment experiment 543 6f5 HEAD 53

54 ~/my-prog git checkout experiment ~/my-prog HEAD experiment 543 6f5 54

55 ~/my-prog git checkout experiment ~/my-prog git add ~/my-prog HEAD experiment 543 6f5 55

56 ~/my-prog git checkout experiment ~/my-prog git add ~/my-prog git commit ~/my-prog HEAD experiment b f5 56

57 ~/my-prog git checkout experiment ~/my-prog git add ~/my-prog git commit ~/my-prog git add ~/my-prog HEAD experiment b f5 57

58 HEAD experiment ~/my-prog git checkout experiment ~/my-prog git add ~/my-prog git commit ~/my-prog git add ~/my-prog git commit ~/my-prog b43 aa f5 58

59 HEAD experiment ~/my-prog git checkout experiment ~/my-prog git add ~/my-prog git commit ~/my-prog git add ~/my-prog git commit ~/my-prog git checkout b43 aa f5 59

60 ~/my-prog git checkout ~/my-prog experiment b43 aa f5 HEAD 60

61 ~/my-prog git checkout ~/my-prog git add ~/my-prog experiment b43 aa f5 HEAD 61

62 ~/my-prog git checkout ~/my-prog git add ~/my-prog git commit ~/my-prog experiment b43 aa f5 c85 HEAD 62

63 ~/my-prog git checkout ~/my-prog git add ~/my-prog git commit ~/my-prog git add ~/my-prog experiment b43 aa f5 c85 HEAD 63

64 experiment ~/my-prog git checkout ~/my-prog git add ~/my-prog git commit ~/my-prog git add ~/my-prog git commit ~/my-prog b43 aa f5 c85 3be HEAD 64

65 experiment ~/my-prog git checkout ~/my-prog git add ~/my-prog git commit ~/my-prog git add ~/my-prog git commit ~/my-prog git merge experiment b43 aa f5 c85 3be HEAD 65

66 ~/my-prog git merge experiment ~/my-prog experiment b43 aa f5 a23 c85 3be HEAD 66

67 ~/my-prog git merge experiment ~/my-prog git add ~/my-prog experiment b43 aa f5 a23 c85 3be HEAD 67

68 ~/my-prog git merge experiment ~/my-prog git add ~/my-prog git commit ~/my-prog experiment b43 aa f5 a c85 3be HEAD 68

69 Merge Konflikte Merge Konflikte treten auf, wenn die gleiche Datei in den beiden Branches auf konflingierende Weise geändert wurden. Führt zu Pausieren des Mergevorgangs Beide Änderungen sind in der Konfliktdatei enthalten Die Konfliktdatei muss manuell editiert werden Danach kann der Merge fortgesetzt werden <<<<<<< HEAD:index.html <div id="footer">contact : .support@github.com</div> ======= <div id="footer"> please contact us at support@github.com </div> >>>>>>> iss53:index.html 69

70 Demo 2 (branch, checkout commit, merge, cherrypick, blame)

71 Die wichtigsten Befehle (3 / 4) git checkout commit Commit Index / Arbeitskopie git rm Datei aus Index und Arbeitskopie löschen git merge Mehrere Branches zusammenführen git cherrypick Einzelnen Commit an aktuellen Branch dranhängen git blame Letzte Änderung an Datei Zeile für Zeile anzeigen 71

72 Arbeiten im Team

73 Verteilte Versionskontrolle mit Server Ein zentrales Repository ermöglicht vereinfachten Austausch Server Computer A Repository Version 3... Working Copy File 1... Repository Version 3... Computer B Repository Version 3... Working Copy File

74 Begriffe Remote Repository Fetch Push Ein externes Repository im Netzwek / Internet Die lokale Kopie des Remote Repositories im eigenen Repo aktualisieren Die lokale Kopie des Remote Repositories zum externen Repo hochladen Remote Branch Referenz auf einen Branch in einem Remote Repository Remote Tracking Branch Remote Branch, welcher automatisch aktualisiert wird Tracking Branch Lokale Kopie eines Remote Tracking Branches mit einer Referenz auf den "Upstream Branch" 74

75 Begriffe Remote Repository Fetch Push Ein externes Repository im Netzwek / Internet Die lokale Kopie des Remote Repositories im eigenen Repo aktualisieren Die lokale Kopie des Remote Repositories zum externen Repo hochladen Remote Branch Referenz auf einen Branch in einem Remote Repository Remote Tracking Branch Remote Branch, welcher automatisch aktualisiert wird Tracking Branch Lokale Kopie eines Remote Tracking Branches mit einer Referenz auf den "Upstream Branch" 75

76 Begriffe Remote Repository Fetch Push Ein externes Repository im Netzwek / Internet Die lokale Kopie des Remote Repositories im eigenen Repo aktualisieren Die lokale Kopie des Remote Repositories zum externen Repo hochladen Remote Branch Referenz auf einen Branch in einem Remote Repository Remote Tracking Branch Remote Branch, welcher automatisch aktualisiert wird Tracking Branch Lokale Kopie eines Remote Tracking Branches mit einer Referenz auf den "Upstream Branch" 76

77 Begriffe Remote Repository Fetch Push Ein externes Repository im Netzwek / Internet Die lokale Kopie des Remote Repositories im eigenen Repo aktualisieren Die lokale Kopie des Remote Repositories zum externen Repo hochladen Remote Branch Referenz auf einen Branch in einem Remote Repository Remote Tracking Branch Remote Branch, welcher automatisch aktualisiert wird Tracking Branch Lokale Kopie eines Remote Tracking Branches mit einer Referenz auf den "Upstream Branch" 77

78 Begriffe Remote Repository Fetch Push Ein externes Repository im Netzwek / Internet Die lokale Kopie des Remote Repositories im eigenen Repo aktualisieren Die lokale Kopie des Remote Repositories zum externen Repo hochladen Remote Branch Referenz auf einen Branch in einem Remote Repository Remote Tracking Branch Remote Branch, welcher automatisch aktualisiert wird Tracking Branch Lokale Kopie eines Remote Tracking Branches mit einer Referenz auf den "Upstream Branch" 78

79 Begriffe Remote Repository Fetch Push Ein externes Repository im Netzwek / Internet Die lokale Kopie des Remote Repositories im eigenen Repo aktualisieren Die lokale Kopie des Remote Repositories zum externen Repo hochladen Remote Branch Referenz auf einen Branch in einem Remote Repository Remote Tracking Branch Remote Branch, welcher automatisch aktualisiert wird Tracking Branch Lokale Kopie eines Remote Tracking Branches mit einer Referenz auf den "Upstream Branch" 79

80 Begriffe Remote Repository Fetch Push Ein externes Repository im Netzwek / Internet Die lokale Kopie des Remote Repositories im eigenen Repo aktualisieren Die lokale Kopie des Remote Repositories zum externen Repo hochladen Remote Branch Referenz auf einen Branch in einem Remote Repository Remote Tracking Branch Remote Branch, welcher automatisch aktualisiert wird Tracking Branch Lokale Kopie eines Remote Tracking Branches mit einer Referenz auf den "Upstream Branch" 80

81 ~/project git clone git.company.com 543 6f5 My Computer 81

82 ~/project git clone ~/project git.company.com 543 6f5 My Computer origin/ 543 6f5 HEAD 82

83 ~/project git add ~/project git commit ~/project git.company.com 543 6f5 My Computer origin/ 543 6f5 HEAD 83

84 ~/project git add ~/project git commit ~/project git.company.com 543 6f5 My Computer origin/ 543 6f5 c85 HEAD 84

85 ~/project git add ~/project git commit ~/project git.company.com 543 6f5 My Computer origin/ 543 6f5 c85 3be HEAD 85

86 Jemand anderes arbeitet parallel und aktualisiert das Remote Repository vor uns git.company.com 543 6f5 My Computer origin/ 543 6f5 c85 3be HEAD 86

87 Jemand anderes arbeitet parallel und aktualisiert das Remote Repository vor uns git.company.com 543 6f5 b43 My Computer origin/ 543 6f5 c85 3be HEAD 87

88 Jemand anderes arbeitet parallel und aktualisiert das Remote Repository vor uns git.company.com 543 6f5 b43 aa4 My Computer origin/ 543 6f5 c85 3be HEAD 88

89 ~/project git fetch ~/project git.company.com 543 6f5 b43 aa4 My Computer b43 aa4 origin/ 543 6f5 c85 3be HEAD 89

90 ~/project git merge origin/ ~/project git.company.com 543 6f5 b43 aa4 My Computer b43 aa4 origin/ 543 6f5 c85 3be a23 HEAD 90

91 ~/project git push origin : ~/project git.company.com 543 6f5 b43 aa4 c85 3be a23 My Computer b43 aa4 origin/ 543 6f5 c85 3be a23 HEAD 91

92 Rebase Workflow

93 experiment ~/my-prog git checkout ~/my-prog git add ~/my-prog git commit ~/my-prog git add ~/my-prog git commit ~/my-prog git checkout experiment b43 aa f5 c85 3be HEAD 93

94 ~/my-prog git checkout experiment ~/my-prog git rebase HEAD experiment b43 aa f5 c85 3be 94

95 ~/my-prog git checkout experiment ~/my-prog git rebase ~/my-prog HEAD experiment f f5 c85 3be 95

96 ~/my-prog git checkout experiment ~/my-prog git rebase ~/my-prog git checkout ~/my-prog experiment f f5 c85 3be HEAD 96

97 ~/my-prog git checkout experiment ~/my-prog git rebase ~/my-prog git checkout ~/my-prog git merge experiment experiment f f5 c85 3be HEAD 97

98 ~/my-prog git checkout experiment ~/my-prog git rebase ~/my-prog git checkout ~/my-prog git merge experiment ~/my-prog experiment 543 6f5 c85 3be f HEAD 98

99 ~/my-prog git checkout experiment ~/my-prog git rebase ~/my-prog git checkout ~/my-prog git merge experiment ~/my-prog git branch -d experiment ~/my-prog 543 6f5 c85 3be f HEAD 99

100 Demo 3 (clone, fetch, push, pull, rebase)

101 Die wichtigsten Befehle (4 / 4) git clone url Remote Repo Lokales Repo git fetch remote Remote Tracking Branches des lokalen Repos aktualisieren git push remote branch Lokales Repo Remote Repo git pull Bei Tracking Branches: Abkürzung für git fetch; git merge git rebase branch Die Commits vom aktuellen Branch in Diffs umwandeln und den angegebenen Branch als Basis verwenden 101

102 Probeklausur

103 Tutorinnen & Tutoren gesucht für Info 1

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

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

Das Tübinger Softwareprojekt

Das Tübinger Softwareprojekt Das Tübinger Softwareprojekt Git & Social Coding Workshop Arbeiten im Team Begriffe Remote Repository Ein externes Repository im Netzwerk / Internet. Begriffe Remote Repository Ein externes Repository

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

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

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

Praktikum Ingenieurinformatik (PI)

Praktikum 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

Mehr

Versionsverwaltung mit Git. Eine Einführung ins Source Code Management

Versionsverwaltung 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

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

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

Verteilte 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 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

Mehr

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

Einführung in Git. Dirk Deimeke. 19. August 2013. My own IT. ddeimeke (My own IT) Einführung in Git 19. August 2013 1 / 23 Einführung in Git Dirk Deimeke My own IT 19. August 2013 ddeimeke (My own IT) Einführung in Git 19. August 2013 1 / 23 Inhalt 1 Etwas Theorie Basiswissen Git 2 Praxis Installation Erstes Repository Besonderheiten

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

Git - Fast Version Control System

Git - Fast Version Control System Git - Fast Version Control System Sebastian Harl Astronomisches Institut der Universität Erlangen-Nürnberg 17. Oktober 2008 Was ist Git? VCS (Version Control

Mehr

Versionsverwaltung mit GIT

Versionsverwaltung 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

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

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

git Änderungen verwalten mit git

git Änderungen verwalten mit git Änderungen verwalten mit git Wie arbeitet man am besten an einem Protokoll zusammen? PeP et al. Toolbox, 2014 2 Idee: Austausch über Mails PeP et al. Toolbox, 2014 3 Mails: Probleme Risiko, dass Änderungen

Mehr

Eine Einführung in das verteilte Quelltextverwaltungssystem Git

Eine Einführung in das verteilte Quelltextverwaltungssystem Git Eine Einführung in das verteilte Quelltextverwaltungssystem Git B.Sc. Daniel Baulig Fachhochschule Frankfurt am Main University of Applied Sciences 2. November 2012 Übersicht 1 Einführung Über mich Versions-was?

Mehr

Versionsverwaltung mit Git

Versionsverwaltung 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

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

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

Softwareentwicklung I (IB) Versionsverwaltung mit Git

Softwareentwicklung 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......................................

Mehr

WOZU VERSIONSKONTROLLE?

WOZU VERSIONSKONTROLLE? GIT AGENDA DES WORKSHOPS WOZU VERSIONSKONTROLLE? GIT GESCHICHTE GIT VERSTEHEN GIT INSTALLIEREN/KONFIGURIEREN BRANCHING/MERGING EXTERNE REPOSITORIES MIT GIT ARBEITEN VERBINDUNG ZUM EXTERNEN REPO AGENDA

Mehr

Praktische Einführung in die Versionsverwaltung mit Eclipse

Praktische 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:

Mehr

Versionkontrolle mit git

Versionkontrolle 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

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

Vorlesung Unix-Praktikum

Vorlesung Unix-Praktikum Vorlesung 7. - globales, Technische Fakultät Universität Bielefeld 6. Dezember 2017 1 / 51 Willkommen zur siebten Vorlesung Was gab es beim letzten Mal? Versionskontrolle git - Prinzipien, lokales 2 /

Mehr

Versionierung für OpenSourcler

Versionierung für OpenSourcler Verteilte Versionskontrolle mit Git Versionierung für OpenSourcler Sebastian tokkee Harl OpenRheinRuhr 2010 14. November 2010 Statistiken: Wer seid ihr? Wer bezeichnet sich als Programmierer?

Mehr

Verteile Revisionskontrolle mit GIT

Verteile 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

Mehr

Versionierung und Bugtracking mit Git(Hub)

Versionierung 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

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

Programmieren 2 06 Git-Teamwork und Egit

Programmieren 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

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

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

Einführung in Verteilte Versionskontrollsysteme. am Beispiel von Git

Einführung in Verteilte Versionskontrollsysteme. am Beispiel von Git Einführung in Verteilte Versionskontrollsysteme am Beispiel von Git Diplominformatiker (BA), Git Benutzer seit 2009 Daniel Böhmer Leibniz Institut für Troposphärenforschung 8. März 2012 Verteilte Versionskontrollsysteme/Git

Mehr

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

Die 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

Mehr

Linux Cafe 2013 11 11. Referent: Bernd Strößenreuther

Linux 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

Mehr

Git in großen Projekten

Git in großen Projekten Git in großen Projekten Einsatz von Submodulen und Subtrees René Preißel (rp@etosquare.de) Buchhandlung Lehmanns, 16.10.2013 1 Über Mich René Preißel (rp@etosquare.de) Freiberuflicher Berater, Entwickler,

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

git Alexander Bernauer <alex@copton.net> Rico Schiekel <fire@downgra.de>

git Alexander Bernauer <alex@copton.net> Rico Schiekel <fire@downgra.de> git Alexander Bernauer Rico Schiekel Big Picture Beispiel Open-Source-Projekt öffentliches Repository öffentlicher Fork push fetch push Haupt- Entwickler fetch Contributer

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

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

Torsten 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

Mehr

Gitting started. Christian Neukirchen. 14dec2011

Gitting started. Christian Neukirchen. 14dec2011 Gitting started Christian Neukirchen 14dec2011 Wieso Versionskontrolle? Erste Schritte Branches Zusammenarbeit Nicht-trivale Features GUI Ausblick Agenda Wieso Versionskontrolle? Den Verlauf eines Projekts

Mehr

Spiel, Spaß und Spannung mit Git

Spiel, Spaß und Spannung mit Git Spiel, Spaß und Spannung mit Git 2-3 Std-Workshop Meine Person??? Spiel, Spaß und Spannung mit Git 2 Ziel Du kannst Git auf einem Windows- oder Linux- Rechner installieren und konfigurieren Du kennst die

Mehr

Git II. Dezentrale Versionsverwaltung im Team

Git II. Dezentrale Versionsverwaltung im Team Git II Dezentrale Versionsverwaltung im Team Themenbereiche Arbeit mit Remote Repositories Austausch zwischen Repositories Änderungen rückgängig machen Zusammenarbeit über Workflows Git hat mehr als nur

Mehr

DNUG FN TOBIAS ALLWEIER

DNUG FN TOBIAS ALLWEIER Hi! DNUG FN 2 TOBIAS ALLWEIER Dipl. Informatiker (FH) Passionated Software Developer Clean Code Developer.NET Junkie.NET User Group Lead E-Mail tobs@tobs4u.com Blog http://www.tobs4u.com Twitter @Blubern

Mehr

Einführung in git. Johannes Gilger & Matthias Lederhofer. Rechen- und Kommunikationszentrum der RWTH Aachen Network Operation Center. 14.

Einführung in git. Johannes Gilger & Matthias Lederhofer. Rechen- und Kommunikationszentrum der RWTH Aachen Network Operation Center. 14. Johannes Gilger & Matthias Lederhofer der RWTH Aachen Network Operation Center 14. Juli 2010 Übersicht Begriffe in der Versionsverwaltung Unterschiede zentrale und dezentrale VCS Warum man git benutzen

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

git & 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 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

Mehr

Versionskontrolle mit Mercurial. Michael Gebetsroither <michael.geb@gmx.at>

Versionskontrolle mit Mercurial. Michael Gebetsroither <michael.geb@gmx.at> Versionskontrolle mit Mercurial Michael Gebetsroither Inhalt Welche Systeme gibt es? - Genauerer Überblick. Mercurial: - Einführung - Grundlagen test Versionskontrollsysteme CVS Mercurial

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

Git - Grundlagen und Anwendungen

Git - Grundlagen und Anwendungen Git - Grundlagen und Anwendungen Simon Fromme 9. Februar 2017 Tralios IT GmbH Inhaltsverzeichnis Git Interna Ein Git-Repository from Scratch Fortgeschrittene Git Befehle git blame git cherry pick git reset

Mehr

Mercurial. 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 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

Mehr

Dezentrale Versionsverwaltung

Dezentrale Versionsverwaltung Dezentrale Versionsverwaltung mit GIT with that guy 14.08.2012 Lars Kumbier 1 Versionsverwaltung? 14.08.2012 Lars Kumbier 2 Versionsverwaltung? Speichern unterschiedlicher Entwicklungsschritte (oder Versionen)

Mehr

Source Code Verwaltung mit Git

Source Code Verwaltung mit Git Source Code Verwaltung mit 16. März 2007 Wer bin ich? Vorstellung Repository commit $ git version git version 1.5.0.3 eindeutiger Autor $ git config --global user.name \ "" $ git config --global user.email

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

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

Git Eine Einführung. LinuxTag 2013, Berlin. Julius Plenz. 22. Mai 2013

Git Eine Einführung. LinuxTag 2013, Berlin. Julius Plenz. 22. Mai 2013 Git Eine Einführung LinuxTag 2013, Berlin Julius Plenz 22. Mai 2013 Ablauf Versionskontrolle: Zentral vs. Dezentral Historischer Kurzabriss zu Git Das Objektmodell wie funktioniert Git? Merge vs. Rebase

Mehr

git verteilte Versionskontrolle

git verteilte Versionskontrolle git verteilte Versionskontrolle Jens Muecke Duesseldorf, 2. Oktober 2009 Content 1. Merkmale 2. Enstehungsgeschichte 3. Aufbau 4. Einfuehrung 5. Erfahrung und Tipps git Jens Muecke 2. Oktober 2009 2 01

Mehr

Versionsverwaltung mit Git

Versionsverwaltung 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,

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

Versionskontrolle mit Git

Versionskontrolle mit Git 27. März 2009 Übersicht 1 Geschichte Vergleich mit anderen Systemen 2 Allgemeines Anlegen eines lokalen Repositories Grundlagen Arbeiten mit Entwicklungszweigen Gemeinsames Arbeiten über öffentliche Repositories

Mehr

Einstieg in Git. Lukáš Kubánek 19.10.2011

Einstieg in Git. Lukáš Kubánek 19.10.2011 Lukáš Kubánek 19.10.2011 1 EINFÜHRUNG EINFÜHRUNG Was ist Git? EINFÜHRUNG Intention der Entwicklung Me personally, I want to have something that is very repeatable and non-clever. Something I understand

Mehr

Konfigurationsdateien mit Git verwalten

Konfigurationsdateien mit Git verwalten Konfigurationsdateien mit Git verwalten Chemnitzer Linuxtage 2011 Julius Plenz 19. März 2011 Veröffentlicht unter der CreativeCommons-Lizenz (By, Nc, Sa) http://chemnitzer.linux-tage.de/2011/vortraege/782

Mehr

Mapra: C++ Teil 3. Felix Gruber, Michael Rom. IGPM, RWTH Aachen. 10. Mai 2016

Mapra: C++ Teil 3. Felix Gruber, Michael Rom. IGPM, RWTH Aachen. 10. Mai 2016 Mapra: C++ Teil 3 Felix Gruber, Michael Rom IGPM, RWTH Aachen 10. Mai 2016 Felix Gruber, Michael Rom (IGPM, RWTH Aachen) Mapra: C++ Teil 3 10. Mai 2016 1 / 16 Themen vom letzten Mal Debuggen mit gdb Zusammengesetzte

Mehr

eclipse - EGit HowTo

eclipse - EGit HowTo eclipse - EGit HowTo An der HSR steht den Studierenden ein git Server für die Versionskontrolle zur Verfügung. Dieses HowTo fasst die notwendigen Informationen zur Verwendung dieses Dienstes in Verwendung

Mehr

Mapra: C++ Teil 5. Felix Gruber, Sven Groß. 16. Mai IGPM, RWTH Aachen. Felix Gruber, Sven Groß (IGPM) Mapra: C++ Teil 5 16.

Mapra: C++ Teil 5. Felix Gruber, Sven Groß. 16. Mai IGPM, RWTH Aachen. Felix Gruber, Sven Groß (IGPM) Mapra: C++ Teil 5 16. Mapra: C++ Teil 5 Felix Gruber, Sven Groß IGPM, RWTH Aachen 16. Mai 2017 Felix Gruber, Sven Groß (IGPM) Mapra: C++ Teil 5 16. Mai 2017 1 / 17 Was bisher geschah Makefiles Funktionen-Templates Ein-/Ausgabe

Mehr

Programmierkurs. Steffen Müthing. November 9, Interdisciplinary Center for Scientific Computing, Heidelberg University

Programmierkurs. Steffen Müthing. November 9, Interdisciplinary Center for Scientific Computing, Heidelberg University Programmierkurs Steffen Müthing Interdisciplinary Center for Scientific Computing, Heidelberg University November 9, 2018 C++-Grundlagen Wiederholung Namespaces Versionskontrolle mit git Übersicht Einführung

Mehr

Versionsverwaltung mit git: Warum und wie.

Versionsverwaltung mit git: Warum und wie. Versionsverwaltung mit git: Warum und wie. Bunter Nachmittag des ifsr, 02.10.2017 1 / 31 2 / 31 Wer sind wir? Hochschulgruppe an der TU (gegründet 2014, ca. 10 P.) Studierende (TU, HTW)

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

Git. Dezentrale Versionsverwaltung im Team - Grundlagen und Workflows. von René Preißel, Bjørn Stachmann. 2., aktualisierte und erweiterte Auflage

Git. Dezentrale Versionsverwaltung im Team - Grundlagen und Workflows. von René Preißel, Bjørn Stachmann. 2., aktualisierte und erweiterte Auflage Git Dezentrale Versionsverwaltung im Team - Grundlagen und Workflows von René Preißel, Bjørn Stachmann 2., aktualisierte und erweiterte Auflage Git Preißel / Stachmann schnell und portofrei erhältlich

Mehr

Dr. R. Guderlei exxcellent solutions gmbh Tim Felgentreff HPI. Versionsmanagement. Zentral oder Verteilt?

Dr. R. Guderlei exxcellent solutions gmbh Tim Felgentreff HPI. Versionsmanagement. Zentral oder Verteilt? Dr. R. Guderlei exxcellent solutions gmbh Tim Felgentreff HPI Versionsmanagement Zentral oder Verteilt? Agenda Verteilte Versionsverwaltung mit Git Git in der Praxis Fazit Grundlegendes Verteilung: kein

Mehr

git Workshop Matthias Beyer Hochschule Furtwangen University matthias. beyer@ hs-furtwangen. de mail@ beyermatthias. de 19.

git Workshop Matthias Beyer Hochschule Furtwangen University matthias. beyer@ hs-furtwangen. de mail@ beyermatthias. de 19. git Workshop Matthias Beyer Hochschule Furtwangen University matthias. beyer@ hs-furtwangen. de mail@ beyermatthias. de 19. November 2013 Matthias Beyer (HFU) Git 19. November 2013 1 / 113 Overview 1 Einführung

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

Überblick. Middleware Cloud Computing Übung. Übungsaufgaben. Termine und Ansprechpartner. Organisatorisches

Überblick. Middleware Cloud Computing Übung. Übungsaufgaben. Termine und Ansprechpartner. Organisatorisches Überblick Middleware Cloud Computing Übung Tobias Distler, Christopher Eibel, Michael Eischer, Timo Hönig Friedrich-Alexander-Universität Erlangen-Nürnberg Lehrstuhl Informatik 4 (Verteilte Systeme und

Mehr

Mitmachen bei Git(Hub)-Projekten!

Mitmachen bei Git(Hub)-Projekten! Mitmachen bei Git(Hub)-Projekten! Sujeevan Vijayakumaran @svijee @credativde svij.org credativ.de 10. März 2018 Sujeevan Vijayakumaran credativ GmbH 1 / 35 Wer hat bei fremden GitHub-Projekten bislang

Mehr

Brauche ich ein DVCS?

Brauche 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

Mehr

Versionsverwaltung mit git. Christoph Knabe FB VI 17.04.2014

Versionsverwaltung 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

Mehr

Grundkurs C++ Buildsysteme Versionsverwaltung mit git

Grundkurs C++ Buildsysteme Versionsverwaltung mit git Grundkurs C++ Buildsysteme Versionsverwaltung mit git Martin Knopp 09.05.2017 Folie 1/1 GK C++: Buildsysteme, Versionsverwaltung Martin Knopp 09.05.2017 Buildsysteme Beispielhaftes Übersetzungsszenario:

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

Gerrit und Jenkins ein Traumpaar für Pre-Tested Commit

Gerrit und Jenkins ein Traumpaar für Pre-Tested Commit und ein Traumpaar für Pre-Tested Commit Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim Steffen Schäfer Steffen Schluff Version:.0 www.oio.de info@oio.de Gliederung Pre-tested commit und

Mehr

Grundkurs C++ Buildsysteme Versionsverwaltung mit git

Grundkurs C++ Buildsysteme Versionsverwaltung mit git Grundkurs C++ Buildsysteme Versionsverwaltung mit git Martin Knopp & Johannes Feldmaier 20.04.2016 Folie 1/22 GK C++: Buildsysteme, Versionsverwaltung Martin Knopp & Johannes Feldmaier 20.04.2016 Buildsysteme

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

Revisionskontrollsystem GIT

Revisionskontrollsystem GIT Revisionskontrollsystem GIT Diplom Informatiker Gregor Rebel 1/ 19 Revisionskontrollsystem GIT v1.2 Versionskontrollsysteme Erfassung von Änderungen an Dateien Protokollierung von Änderungen Wiederherstellung

Mehr

EGit: Die effiziente Git- Integration in Eclipse

EGit: Die effiziente Git- Integration in Eclipse EGit: Die effiziente Git- Integration in Eclipse http://eclipse.org/egit Dr. Stefan Lay (SAP) stefan.lay@sap.com Twitter: @stefanlay + = Agenda Überblick EGit 1.0 Demo Q & A Die Hauptdarsteller Git ist

Mehr

Middleware Cloud Computing Übung

Middleware Cloud Computing Übung Middleware Cloud Computing Übung Tobias Distler, Christopher Eibel, Michael Eischer, Timo Hönig Friedrich-Alexander-Universität Erlangen-Nürnberg Lehrstuhl Informatik 4 (Verteilte Systeme und Betriebssysteme)

Mehr

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

Versionsmanagement. 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

Mehr

SWP Ü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 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

Mehr

Julius Plenz. Valentin Haenel. Git. Verteilte Versionsverwaltung für Code Dokumente. 2. Auflage. Open Source Press

Julius Plenz. Valentin Haenel. Git. Verteilte Versionsverwaltung für Code Dokumente. 2. Auflage. Open Source Press Valentin Haenel Julius Plenz Git Verteilte Versionsverwaltung für Code Dokumente 2. Auflage Open Source Press Inhaltsverzeichnis Vorwort 11 I Grundlagen 17 1 Einführung und erste Schritte 19 1.1 Grundbegriffe

Mehr

Versionskontrolle. Vortrag im Master-Praktikum MindStreams Sommersemester 2013. Michael Fiedler <michael.fiedler@fau.de> 30.

Versionskontrolle. Vortrag im Master-Praktikum MindStreams Sommersemester 2013. Michael Fiedler <michael.fiedler@fau.de> 30. Versionskontrolle Vortrag im Master-Praktikum MindStreams Sommersemester 2013 Michael Fiedler 30. April 2013 1 / 33 Überblick 1 Versionskontrolle 2 Git 3 GitFlow 4 Zusammenfassung

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

Lehrstuhl für Datenverarbeitung. Technische Universität München. Grundkurs C++ Buildsysteme

Lehrstuhl für Datenverarbeitung. Technische Universität München. Grundkurs C++ Buildsysteme Grundkurs C++ Buildsysteme Buildsysteme Beispielhaftes Übersetzungsszenario: Verzeichnis tutorial7/ main.cpp, lcdrange.cpp, lcdrange.h *.cpp Kompilieren *.o *.h Grundkurs C++ 2 Headerdateien //blackbox.h

Mehr

Grundkurs C++ Buildsysteme Versionsverwaltung mit git

Grundkurs C++ Buildsysteme Versionsverwaltung mit git Grundkurs C++ Buildsysteme Versionsverwaltung mit git Martin Knopp, Martin Gottwald, Stefan Röhrl 25.04.2018 Folie 1/21 GK C++: Buildsysteme, Versionsverwaltung Martin Knopp, Martin Gottwald, Stefan Röhrl

Mehr

Semesterprojekt Implementierung eines Brettspiels (inklusive computergesteuerter Spieler) Versionierung und Bugtracking mit GitHub

Semesterprojekt 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

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

GIT. Florian Westphal. 29. November D/F260502D 1C81 1AD5 EA8F E8EE 5E2F DA6C F D

GIT. Florian Westphal. 29. November D/F260502D 1C81 1AD5 EA8F E8EE 5E2F DA6C F D global information tracker : you re in a good mood, and it actually works for you. Angels sing, and a light suddenly fills the room. goddamn idiotic truckload of sh*t : when it breaks (/usr/share/doc/git-1.5.3.3/readme)

Mehr

Versionskontrolle mit Apache Subversion

Versionskontrolle mit Apache Subversion Versionskontrolle mit Apache Subversion Dr.-Ing. Mathias Magdowski Lehrstuhl für Elektromagnetische Verträglichkeit Institut für Medizintechnik Otto-von-Guericke-Universität, Magdeburg 3. Juni 2015 Versionskontrolle

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