110 likes | 276 Views
CVS. Concurrent Versions System. Kurze Einführung. Es gibt eine Datenbank mit einer Baumstruktur Ein Ast dieses Baumes ist ein Projekt ein Projekt enthält einen Teilbaum. die Struktur der Datenbank wird von den Mitarbeitern erzeugt Versionskontrolle wird automatisch durchgeführt
E N D
CVS Concurrent Versions System
Kurze Einführung • Es gibt eine Datenbank mit einer Baumstruktur • Ein Ast dieses Baumes ist ein Projekt • ein Projekt enthält einen Teilbaum. • die Struktur der Datenbank wird von den Mitarbeitern erzeugt • Versionskontrolle wird automatisch durchgeführt • Milestone/Revision Management (Branching/Tagging) • Daten-Typen in der Datenbank: Text, Binary
Was ist CVS ? Ein System um die Versionsgeschichte von Quelltexten und Dokumenten festzuhalten und ggf. später abzurufen • Speicherung nur der Unterschiede zur jeweils letzten gespeicherten Version (Speicherplatz-Ersparniss) • Sicherstellung der exklusiven Bearbeitung eines Dokumentes/Quelltext-Teiles für einen Benutzer Mehrbenutzerfähigkeit wird dadurch erst garantiert und ermöglicht.
Was ist CVS nicht ? • kein Build-System • Durch das CVS System wird nicht sichergestellt oder vorgegeben, wie die Quelltexte organisiert sind. CVS kümmert sich nicht darum, wie die Dokumente/Quelltexte abgelegt werden und ob sie so einem logischen Kontext folgen. • kein Ersatz für Management/Konzepte • Es werden keine Konzepte vorgegeben Sache des Entwicklers; der Mitarbeiter • kein Ersatz für die Kommunikation unter den Mitarbeitern • Ein CVS System ersetzt keine Absprachen, es erleichtert nur die Arbeit mit den Dokumenten und Quelltexten ansich. • kein Ersatz für ein Projektübergreifendes Changelog • zwar protokolliert CVS Quelltext-Änderungen und Kommentare; jedoch: nur pro Eincheck-Vorgang (u.U. mehrere Dateien = ein Kommentar)
Arbeit mit CVS • Verschiedene Sorten von User-Interfaces • Kommandozeile (Standard) • Grafisch (bspw. WinCVS – www.wincvs.org), • Integriert (bspw. TortoiseCVS – www.tortoisecvs.org) • VisualStudio (bspw. CVSln http://www.kryptonians.net/cvs/) Im Allgemeinen ist der Einsatz der grafischen Benutzeroberflächen empfehlenswert – Kommandozeile „gewöhnungsbedürftig“
Arbeit mit CVS • Erstellen des Projektes in CVS Datenbank • einfaches neu erstellen • Übernahme bestehender Verzeichniss/Projektstrukturen • Übernahme aus anderen Systemen • Gruppierung von zusammengehörenden Projekten (Module) • Ein- / Auschecken von Dokumenten (Repository, Working Directory, check in/out)
Arbeit mit CVS Unterscheidung von Projekten / Modulen, Revisionen, Versionen, Releases, Branches und Tags Revisionen / Versionen / Releases Version 1.0.0 Version 1.1.0 Version 1.2.0 Release 1 Version 2.0... Release 2 Version 3.0... - Werden automatisch erzeugt; können jedoch auch vergeben werden
Arbeit mit CVS Unterscheidung von Projekten / Modulen, Revisionen, Versionen, Releases, Branches und Tags Tags Datei 1 Datei 2 Datei 3 Version 1.0.0 Version 1.0.0 Version 1.0.0 Release 1.0 Version 1.1.0 Version 1.1.0 Version 1.1.0 Version 1.2.0 Version 1.2.0 Version 1.2.0 Release 1.1 Version 1.3.0 Version 1.3.0 Version 1.3.0 • Sollen Abhängigkeiten für Releases anzeigen und speichern
Arbeit mit CVS Unterscheidung von Projekten / Modulen, Revisionen, Versionen, Releases, Branches und Tags Branches Haupt-Baum Version 1.0.0 Version 1.1.0 Branch Version 1.2.0 Version 1.2.1 Branch Version 2.0... Version 2.1.2 • auch Milestones ermöglicht das „abschliessen“ einer Version in Form eines Teilbaumes
Links WinCVS - http://www.wincvs.org http://www.cvsgui.org [ allgemeine CVS Seite und CVS GUI Seite ] WinCVS HowTo - http://www.computas.com/pub/wincvs-howto/ [ englische HowTo Übersicht zu WinCVS ] TortoiseCVS - http://www.tortoisecvs.org [ Windows CVS Explorer Integration ] CVSln - http://www.kryptonians.net/cvs/wincvs_and_ide.html [ Visual Studio 6.0 CVS Integration ]