Versionskontrolle / Versionsmanagement / Versionsverwaltung


1. Funktionsumfang von Versionsverwaltungssystemen


  • Protokollierung von Änderungen an Dateien
  • Archivierung von Versionen (Releases) eines Projektes bestehend aus mehreren zusammenhängenden Dateien
  • Wiederherstellung von alten Ständen einzelner Dateien oder ganzer Projekte
  • Koordinierung des gemeinsamen Zugriffs von mehreren Autoren oder Entwicklern auf Dateien
  • KonfigurationsmanagementKeine Zugangsberechtigung


2. Versionsverwaltungssystemen


  • CVS ist stark verbreitet. Direkte Unterstützung von Eclipse
  • SVNKeine Zugangsberechtigung bringt mehr mit im Vergleich zum Vorgänger CVS. Vor allem das Verschieben von Verzeichnissen ist jetzt möglich ohne die vorherigen Versionen der betroffenen Dateien zu verlieren.
  • Microsoft Visual SourceSafe ist kommerziell und man kann damit arbeiten
  • Rational ClearCase
  • GitKeine Zugangsberechtigung

3. Prinzip eines Versionsverwaltungssystems


Versionsmanagement basiert meist auf einem Repository auf das meist mehrere User (Entwickler, Autoren) zugreifen. In dem Repository legen User geänderte Dateien ab oder laden sich Dateien mit bestimmten Versionen vom Repository. Das Repository ist meist ein Server, der über ein Netzwerk erreichbar ist. Die User greifen über Clients auf das Repository zu. Ein Versionsverwaltungssystems besteht also aus einem Server, der Zugriff auf ein Repository anbietet und mindestens einem Client, der auf das Repository zugreift.


4. Aktionen


Die grundlegenden Aktionen bei der Arbeit mit einer Versionsverwaltung.

Add
Hinzufügen einer Datei zum Repository. Damit wird die Datei im Repository bekannt gemacht.

Commit
Die lokale Version wird in das Repository übertragen. Neuere Dateien werden im Repository nicht überschrieben.

Update
Die lokale Version wird aktualisiert. Falls erforderlich werden aktuelle Dateien aus dem Repository geholt. Neuere Dateien werden lokal nicht überschrieben.

Tag
Damit wird ein Bündel aus Dateien unter einer Versionsnummer - einem Tag - gesichert.

Lock
Damit können Dateien gesperrt werden, damit andere sehen, dass man an diesen Dateien arbeitet.


5. Konventionen


  • Check in early and often
  • Mit anderen in Kontakt bleiben. Kommunikation über Telefon, E-Mail, Treffen etc.
  • Sicherer Ablauf einer Änderung bei der Entwicklung in einem Team: 1. Update, 2. Lock, 3. Änderungen durchführen, 4. Check in
  • Man sollte es vermeiden, generierte (exe, dll, moc, ...) oder zu große Dateien unter Versionskontrolle zu nehmen. Auf der anderen Seite, wenn Sicherheit eine große Rolle spielt geht man leiber auf Nummer sicher, so wie es in Hunt2003 auf S. 80 empfohlen wird.


Siehe auch GroupWareSoftwareEntwicklungSoftwareTechnik

There are no comments on this page. [Add comment]

Valid XHTML 1.0 Transitional :: Valid CSS :: Powered by WikkaWiki